【鏈表】 奇偶鏈表

給定一個(gè)單鏈表,把所有的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)分別排在一起。請(qǐng)注意芍瑞,這里的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)指的是節(jié)點(diǎn)編號(hào)的奇偶性,而不是節(jié)點(diǎn)的值的奇偶性褐墅。

請(qǐng)嘗試使用原地算法完成拆檬。你的算法的空間復(fù)雜度應(yīng)為 O(1),時(shí)間復(fù)雜度應(yīng)為 O(nodes)妥凳,nodes 為節(jié)點(diǎn)總數(shù)竟贯。

來(lái)源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/odd-even-linked-list

輸入: 1->2->3->4->5->NULL
輸出: 1->3->5->2->4->NULL

代碼:

          if(head==null){
                return null;
         }
        ListNode node2=head.next;
        ListNode odd=head;
        ListNode even=node2;

        while(even!=null && even.next!=null){
                odd.next=even.next;
                odd=odd.next;
                even.next=odd.next;
                even=even.next;
        }
        odd.next=node2;
        return head;
    }

思路:
對(duì)于原始鏈表,每個(gè)節(jié)點(diǎn)都是奇數(shù)節(jié)點(diǎn)或偶數(shù)節(jié)點(diǎn)逝钥。頭節(jié)點(diǎn)是奇數(shù)節(jié)點(diǎn)屑那,頭節(jié)點(diǎn)的后一個(gè)節(jié)點(diǎn)是偶數(shù)節(jié)點(diǎn),相鄰節(jié)點(diǎn)的奇偶性不同艘款。因此可以將奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)分離成奇數(shù)鏈表和偶數(shù)鏈表持际,然后將偶數(shù)鏈表連接
在奇數(shù)鏈表之后,合并后的鏈表即為結(jié)果鏈表哗咆。

原始鏈表的頭節(jié)點(diǎn) head 也是奇數(shù)鏈表的頭節(jié)點(diǎn)以及結(jié)果鏈表的頭節(jié)點(diǎn)蜘欲,head 的后一個(gè)節(jié)點(diǎn)是偶數(shù)鏈表的頭節(jié)點(diǎn)。令 evenHead = head.next晌柬,則 evenHead 是偶數(shù)鏈表的頭節(jié)點(diǎn)姥份。

維護(hù)兩個(gè)指針 odd 和 even 分別指向奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn),初始時(shí) odd = head年碘,even = evenHead澈歉。通過(guò)迭代的方式將奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)分離成兩個(gè)鏈表,每一步首先更新奇數(shù)節(jié)點(diǎn)盛泡,然后更新偶數(shù)節(jié)點(diǎn)闷祥。

作者:LeetCode-Solution
鏈接:https://leetcode-cn.com/problems/odd-even-linked-list/solution/qi-ou-lian-biao-by-leetcode-solution/
來(lái)源:力扣(LeetCode)
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處凯砍。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末箱硕,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子悟衩,更是在濱河造成了極大的恐慌剧罩,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件座泳,死亡現(xiàn)場(chǎng)離奇詭異惠昔,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)挑势,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門镇防,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人潮饱,你說(shuō)我怎么就攤上這事来氧。” “怎么了香拉?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵啦扬,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我凫碌,道長(zhǎng)扑毡,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任盛险,我火速辦了婚禮瞄摊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘枉层。我一直安慰自己泉褐,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布鸟蜡。 她就那樣靜靜地躺著膜赃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪揉忘。 梳的紋絲不亂的頭發(fā)上跳座,一...
    開(kāi)封第一講書(shū)人閱讀 49,079評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音泣矛,去河邊找鬼疲眷。 笑死,一個(gè)胖子當(dāng)著我的面吹牛您朽,可吹牛的內(nèi)容都是我干的狂丝。 我是一名探鬼主播换淆,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼几颜!你這毒婦竟也來(lái)了倍试?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤蛋哭,失蹤者是張志新(化名)和其女友劉穎冕碟,沒(méi)想到半個(gè)月后焙压,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體鹏漆,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嫁盲,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了沪蓬。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片彤钟。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖怜跑,靈堂內(nèi)的尸體忽然破棺而出样勃,到底是詐尸還是另有隱情,我是刑警寧澤性芬,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站剧防,受9級(jí)特大地震影響植锉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜峭拘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一俊庇、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鸡挠,春花似錦辉饱、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至备埃,卻和暖如春姓惑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背按脚。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工于毙, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人辅搬。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓唯沮,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子介蛉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 今天學(xué)習(xí)的算法是奇偶鏈表萌庆,自己實(shí)現(xiàn)后發(fā)現(xiàn)雖然方法大致思路是對(duì)的。但是最后提交完看解題答案發(fā)現(xiàn)竟然還可以這么簡(jiǎn)單甘耿。 ...
    今年花開(kāi)正美閱讀 673評(píng)論 0 1
  • 奇偶鏈表 問(wèn)題描述給定一個(gè)單鏈表踊兜,把所有的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)分別排在一起。請(qǐng)注意佳恬,這里的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)指的是節(jié)...
    zsdy閱讀 289評(píng)論 0 0
  • 題目: 給定一個(gè)單鏈表捏境,把所有的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)分別排在一起。請(qǐng)注意毁葱,這里的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)指的是節(jié)點(diǎn)編號(hào)的奇...
    唧唧復(fù)唧唧丨閱讀 92評(píng)論 0 0
  • 題目描述: 給定一個(gè)單鏈表垫言,把所有的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)分別排在一起。請(qǐng)注意倾剿,這里的奇數(shù)節(jié)點(diǎn)和偶數(shù)節(jié)點(diǎn)指的是節(jié)點(diǎn)編號(hào)...
    _NewMoon閱讀 164評(píng)論 0 2
  • 328 Odd Even Linked List 奇偶鏈表 Description:Given a singly ...
    air_melt閱讀 105評(píng)論 0 0