溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Lintcode39 Recover Rotated Sorted Array solution 題解

發(fā)布時間:2020-07-30 18:10:14 來源:網絡 閱讀:435 作者:abcdd1234567890 欄目:開發(fā)技術

【題目描述】

Given a rotated sorted array, recover it to sorted array in-place.

給定一個旋轉排序數組,在原地恢復其排序。

【題目鏈接】

http://www.lintcode.com/en/problem/recover-rotated-sorted-array/

【題目解析】

首先可以想到逐步移位,但是這種方法顯然太浪費時間,不可取。下面介紹利器『三步翻轉法』,以[4, 5, 1, 2, 3]為例。

首先找到分割點5和1

翻轉前半部分4, 5為5, 4,后半部分1, 2, 3翻轉為3, 2, 1。整個數組目前變?yōu)閇5, 4, 3, 2, 1]

最后整體翻轉即可得[1, 2, 3, 4, 5]

由以上3個步驟可知其核心為『翻轉』的in-place實現。使用兩個指針,一個指頭,一個指尾,使用for循環(huán)移位交換即可。

【參考答案】

http://www.jiuzhang.com/solutions/recover-rotated-sorted-array/


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI