鏈結排好序的兩個鍊錶(類似於mergeSort)

2021-07-09 07:01:31 字數 416 閱讀 8494

題目:給定兩個已知排好序的鍊錶,將兩鍊錶鏈結,構成的新鍊錶需要排好序

思路:從鍊錶開頭比較結點大小,若第一條煉表頭節點值不大於第二條,將第一鍊錶指標指向下乙個,若第一條鍊錶值大,將第二條鍊錶指標指向下乙個。最後將剩下未到末結點的鍊錶鏈結到新鍊錶!

**如下:

/**

* definition for singly-linked list.

* public class listnode

* }*/public class solution

else

result = result.next;

}if(l1!=null)

if(l2!=null)

return newhead.next;

}}

合併兩個排好序的鍊錶

typedef struct nodetag node typedef node pnode node combine node p1,node p2 while p1 null p2 null p1 valval p next p2 return head node build int a,int...

合併兩個己排好序的鍊錶及陣列

唉,這麼簡單的東西,說簡單是簡單,關鍵是要把這東西寫得好,老少兼知。應對所有測試用例,那就有點難了吧。話說天下之事,作於細。我們用圖來說說吧 看合併的步驟 1 2 3 4 源 ifndef combine two list h definecombine two list h include rev...

找出兩個已經排好序的陣列的中位數

問題 給兩個已經排好序的陣列,乙個長度為 m m 1 乙個長度為 n n 1 找出這兩個陣列的中位數。時間複雜度要求為 o m n 空間複雜度為 o 1 其實這個問題本身來講是不難的,關鍵的關鍵,是對一些邊界條件的處理。思路 我們首先判斷中位數的位置,如果 m n 為奇數,那麼中位數的位置是 第 m...