必修选修: 必修git
实验主要涉及:线性结构之链表及数组数组
③在你的程序中,请用一个特殊变量名来纪录元素的总数,变量名就是你的名字。 例如你叫 张三, 那么这个变量名就是
int nZhangSan = 0; //初始化为0.
数据结构
实验四
学习
实验五
.net
问题一:实验4在实现打印Print方法时,正常输入的数字后面出现的不少个0的问题。
设计
问题一解决:刚开始写这个方法的时候,for循环里面是遍历了整个数组,而我在最前面定义数组长度的时候定义了100个空间,虽然我放入了固定长度的有效的一些数组,但数组后面空着的位置默认放入了元素0;故在打印时会出现这样的问题,因此解决办法是控制遍历的循环次数,将咱们输入以及操做的有效存进数组中的数字打印出来就好,用nlixinyu来表明当前数组中的有效数字总数,最后用nlixinyu做为for循环中的控制条件就完美解决了这个问题。以前还想过用for-each来打印数组,可是问题是同样的,咱们只选用数组的一部分便可,如果用for-each仍然会出现后面大量0的问题。3d
问题二:在作实验4时,数组的插入和删除方法一直不能实现,经过所学知识以为本身彻底理解其实质含义,但苦于一直没法完美实现需求结果,刚开始出现不少的0,后面又没法出现丢失索引处元素的状况,删除在索引为1的位置不能实现的状况。
调试
问题二解决:从网上查阅资料后,发现要在某一具体位置插入某个元素的值,须要从最后的数组元素开始,一个一个的向后移位,这样才能保证原索引值元素不丢失。通过改正和代码调试,最终达到了目的。再来看删除方法,删除方法当时不能删除索引为0的数,而咱们的实验要求刚好是要删除索引值为1的元素,因此就在短短的三行代码里,到底哪里出了问题,最终通过Debug调试,发现要求数组的索引最大应该是元素总数-1才对,因此当个人循环次数直接小于元素总数时,最后扫到往前挪的数值仍是0,,因此我最后是没法删除成功的。更改以后就能够进行删除操做了。
code
本次实验作的时间有点久,其实链表和数组的不少内容都是上学期接触过甚至实现过的,但由于本身掌握的不牢靠,像从文件中读入数据这个点就卡了本身好久,像给数组中插入删除元素也就卡了本身好久。blog
知识的融汇贯通性实为重要,这使我想到《论语·述而篇》中的“不愤不启,不悱不发,举一隅不以三隅反,则不复也”,善于学习的能力是从古至今都公认的不可缺少者。
“愤”“悱”加之,故亦心向往之,心向往之,故愈觅求知。