关于数组的删除

来源:2-5 包含,搜索和删除

无心铁憨憨

2018-12-31

图片描述
数组长度为10,元素是0-9,执行两次remoevLast()之后,打印出来的是0-7,但实际8和9还是存在数组中的,这个时候我要在数组最后的位置添加一个元素是10,或者说是10把9覆盖了,但是打印出来的结果是0-8,所以感觉这段代码还是有问题的

写回答

2回答

qq_匆匆那年_21

2018-12-31

老铁,计算机只有对错,没有感觉不感觉。我按照你说的步骤执行课程提供的代码,打印了所有数据,完全没问题啊。

建议认真debug !- -。

normal                  :Array: size = 10 , capacity = 10

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

remove index:9

after  arr.removeLast()1:Array: size = 9 , capacity = 10

[0, 1, 2, 3, 4, 5, 6, 7, 8]

remove index:8

Array: size = 8 , capacity = 10

[0, 1, 2, 3, 4, 5, 6, 7]

after  arr.removeLast()2:Array: size = 8 , capacity = 10

[0, 1, 2, 3, 4, 5, 6, 7]

after  aaddLast         :Array: size = 9 , capacity = 10

[0, 1, 2, 3, 4, 5, 6, 7, 10]

Array: size = 9 , capacity = 10

[0, 1, 2, 3, 4, 5, 6, 7, 10]


0
1
无心铁憨憨
hhh。是我代码编写的问题,谢谢老铁的耐心回答
2019-01-01
共1条回复

liuyubobobo

2018-12-31

把你说的有bug的测试用例用代码表示一下?尝试用我们实现的数组结构真正执行一下,看看打印结果是什么,是否真的有问题?如果没有出现你预想的问题,仔细研究一下,为什么?:)


加油!新年快乐!

0
0

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1704 问题

查看课程