騰訊50題第11題

2021-09-26 22:15:40 字數 691 閱讀 6648

將兩個有序鍊錶合併為乙個新的有序鍊錶並返回。新煉表是通過拼接給定的兩個鍊錶的所有節點組成的。

示例:

輸入:1

->2-

>4,

1->3-

>

4輸出:1

->1-

>2-

>3-

>4-

>

4

class

solution

:def

mergetwolists

(self, l1, l2)

:if l1 is

none

:return l2

elif l2 is

none

:return l1

elif l1.val < l2.val:

l1.next

= self.mergetwolists(l1.

next

, l2)

return l1

else

: l2.

next

= self.mergetwolists(l1, l2.

next

)return l2

因為這道題在上資料結構的時候做過,不過是用c#寫的,這回換了python,不過最重要的思想就是遞迴啦。

騰訊50題第8題

編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例1 輸入 flower flow flight 輸出 fl 示例2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。class solution def longestcommonprefix se...

騰訊50題第10題

給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。例如,給定陣列 nums 1,2,1,4 和 target 1.與 target 最接近的三個數的和為 2.1 2...

騰訊50題第15題

假設按照公升序排序的陣列在預先未知的某個點上進行了旋轉。例如,陣列 0,1,2,4,5,6,7 可能變為 4,5,6,7,0,1,2 搜尋乙個給定的目標值,如果陣列中存在這個目標值,則返回它的索引,否則返回 1 你可以假設陣列中不存在重複的元素。你的演算法時間複雜度必須是 o log n 級別。示例...