单双链表操作的注意事项——插入,删除,遍历操作

对链表进行操作时,代码的顺序会影响到程序的执行结果

如:对双链表进行头部插入操作时,操作顺序为:

单双链表操作的注意事项——插入,删除,遍历操作

此处new->pNext = pH->pNext;语句必须要在pH->pNext = new;之前执行,因为将new赋值给pH->pNext的操作会改变 pH->pNext的值,而new->pNext = pH->pNext需要将pH->pNext未改变之前的值赋值给new->pNext,所以对值有改变的语句要后执行。

 

对双链表的前向遍历过程中也存在这个问题: 

 赋值操作在打印语句之前的情况如下:

单双链表操作的注意事项——插入,删除,遍历操作 

单双链表操作的注意事项——插入,删除,遍历操作 

 

赋值操作在打印语句之后的情况如下: 

单双链表操作的注意事项——插入,删除,遍历操作 

 单双链表操作的注意事项——插入,删除,遍历操作

第二种顺序输出的结果为正确的,第一种输入顺序 总会漏掉第一个元素。

 

书写程序时的其他需要注意事项:

1.注意程序注释的书写,书写函数,定义变量时,及时书写注释,良好的代码注释习惯能够极大的提高程序的可读性,同时也能够方便后期阅读写过的代码时能够及时回忆起来。

2.函数命名时尽量使用对应的英文来命名,尽量不要使用汉语拼音的方式。。。

3.定义函数时若最开始无法确定传参和返回值类型时,可先都定义为void类型,书写过程中若发现需要传参和返回值时,再将void换成对应的类型