当前位置:Health-Conditions

理解算理构建算法的研(读:yán)究论文 程序员是怎么学习算法的?

2025-03-05 12:37:03Health-Conditions

程序员是怎么学习算法的?把自己变笨,要进入计算机的世界,每次只能进行一步计算。最难的算法都是需要迭代理解,比如链表逆转,如果空间足够大,可以把所有链条断开并且都保存起来,用递归:头部的指针直接给临时指针,临时指针变头部指针继续循环,直到找到尾部的指针,然后头尾交换,完成转换

亚博体育

程序员是怎么学习算法的?

把自己变笨,要进入计算机的世界,每次只能进行一步计算。最难的算法都是需要迭代理解,比如链表逆转,如果空间足够大,可以把所有链条断开并且都保存起来,用递归:头部的指针直接给临时指针,临时指针变头部指针继续循环,直到找到尾部的指针,然后头尾交换,完成转换。

澳门博彩

if#28node.next == null#29 {//当最后一个节点的时候返回return node

澳门金沙

Node temp = node.next//得到当前节点的(读:de)下一个节点

Node returnNode = reverseList#28temp#29

开云体育

temp.澳门新葡京next = node//下一个节点的下一个节点为当前《拼音:qián》节点实现逆转

node.next = null//实现逆转前链表的头结点为为节(繁:節)点

return returnNode//返回《繁:迴》逆转后的链表的头节点

开云体育

}

如果没有大空间,就需要头指针自己迭代,保存头部的指针,头部的指针变头头部【读:bù】指针(第一次为尾部空),头头(tóu)部指针变头指针,头指针变头部指针,这一轮结束,下轮开始,直到末尾。

public Node reverseList2#28Node node#29 {

爱游戏体育

Node frontNode = null//头结点逆转的时候前一个节【繁体:節】点为null

Node he开云体育adNode = node//当(繁:當)前节点为头节点

Node tempNode//临时变量《练:liàng》保存下一个节点while#28headNode #21= null#29 {

tempNode = headNode.next

headNode.next = frontNode//实现逆《读:nì》转

frontNode = headNode

headNode = tempNode

澳门伦敦人

}

澳门银河

}

本文链接:http://10.21taiyang.com/Health-Conditions/6445829.html
理解算理构建算法的研(读:yán)究论文 程序员是怎么学习算法的?转载请注明出处来源