作者sirusi ()
看板C_and_CPP
标题[问题] Leetcode 448 Runtime error
时间Thu Apr 20 22:42:03 2017
在电脑上跑结果可以 但在Leetcode上跑时会显示Runtime error 错误讯息如下:
munmap_chunk(): invalid pointer: 0x000000000187d480 ***
Leetcode 448网页:
https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/
我的程式码:
https://pastebin.com/yrw51vV3
输出页面:
http://imgur.com/a/6DQA3
我尝试用in-place的写法,把出现过的数字在原本的阵列中index清成0
最後再检查非0的index就是没出现过的数字
我写完函式後放在main里面跑跑看 input都可以跑出与预期output相同
但放到Leetcode上就会显示invalid pointer
请问是函式中是哪边出了问题呢
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.167.4.142
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1492699328.A.4D4.html
※ 编辑: sirusi (118.167.4.142), 04/20/2017 22:43:51
1F:推 b0920075: 会是因为arr只给两个int空间,但是function最後回圈的部 04/20 23:06
2F:→ b0920075: 分给超过吗?我不太确定,不过看讯息好像是改到memory c 04/20 23:06
3F:→ b0920075: hunk 04/20 23:06
4F:推 b0920075: 喔喔看错错误讯息了QQ 04/20 23:11
5F:→ b0920075: 不过还是觉得跟你malloc的那块空间有关,做等其他大神 04/20 23:12
6F:→ sirusi: 谢谢b大,因为题目在C的注解 有要求malloc我就照做了0.0 04/20 23:24
7F:推 kokal: 印象中,returnsize是传你return的array的size,而非指定的 04/20 23:50
8F:推 alans: 先算出*returnSize => malloc => assign value 04/20 23:58
10F:→ sirusi: 原来如此! 谢谢k大跟a大 04/21 12:28