恢复博客更新 --- 逆序单项链表 要求空间复杂度o(1) 时间复杂度o(n)
生活随笔
收集整理的這篇文章主要介紹了
恢复博客更新 --- 逆序单项链表 要求空间复杂度o(1) 时间复杂度o(n)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉眼已經2016年3月1日了,前一陣子忙了很多事,包括下決心換了工作,也算是正式進了互聯網行業。現在后頭想想,人必須趁著有時間有精力時多折騰,畢竟人生短短幾十年,如果不折騰以后肯定會后悔。
?
今天開始恢復更新博客了,計劃今年要做的事:
1. 復習微積分
2. 復習概率論和統計學
3. 刷一遍leetcode
?
作為熱身,先來一道最近微博上挺火的一道筆試題吧,據說沒幾個能無bug的寫出來,我自己看了一下,覺得很簡單,但寫了一下還是不小心給繞進去了,看來算法題就得沒事多練,既能預防老年癡呆,還能順手提高智商。。。
?
逆序單項鏈表 要求空間復雜度o(1) 時間復雜度o(n)
1 package com.autonavi.algo; 2 3 public class ReverseLinkedList { 4 5 public static void main(String[] args){ 6 Node node0 = new Node(null,0); 7 Node node1 = new Node(null,1); 8 Node node2 = new Node(null,2); 9 10 node0.next = node1; 11 node1.next = node2; 12 13 Node node = node0; 14 while(null != node){ 15 System.out.println(node.value); 16 node = node.next; 17 } 18 19 Node newHead = reverse(node0); 20 21 node = newHead; 22 while(null != node){ 23 System.out.println(node.value); 24 node = node.next; 25 } 26 } 27 28 public static Node reverse(Node head){ 29 Node p; 30 Node tmp = head.next; 31 head.next = null; 32 while(tmp != null){ 33 p = tmp; 34 tmp = tmp.next; 35 p.next = head; 36 head = p; 37 } 38 return head; 39 } 40 } 41 42 class Node{ 43 Node next; 44 int value; 45 Node(Node next, int value){ 46 this.next = next; 47 this.value = value; 48 } 49 @Override 50 public String toString() { 51 return "Node [next=" + next + ", value=" + value + "]"; 52 } 53 54 }?
轉載于:https://www.cnblogs.com/aalex/p/5231492.html
總結
以上是生活随笔為你收集整理的恢复博客更新 --- 逆序单项链表 要求空间复杂度o(1) 时间复杂度o(n)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux系统编程18:超详解进程程序替
- 下一篇: ASP.NET MVC 传值方法View