輸入兩個遞增排序的鍊錶,合併這兩個鍊錶並使新鍊錶中的節點仍然是遞增排序的。
示例1:
輸入:1
->2-
>4,
1->3-
>
4輸出:1
->1-
>2-
>3-
>4-
>
4限制:
0<= 鍊錶長度 <=
1000
class
solution
if(l2 == null)
listnode res =
newlistnode(0
);listnode cur = res;
while
(l1 != null && l2 != null)
else
cur = cur.next;
}//如果長度不相等的情況
if(l1 != null)
if(l2 != null)
return res.next;
}}
class
solution
if(l2 == null)
listnode res = l1.val < l2.val ? l1 : l2;
res.next =
mergetwolists
(res.next, l1.val >= l2.val ? l1 : l2)
;return res;
}}
給定乙個整數,編寫乙個函式來判斷它是否是 2 的冪次方。
示例 1
:輸入:
1輸出:
true
解釋:20=1
示例 2
:輸入:
16輸出:
true
解釋:24=16
示例 3
:輸入:
218輸出:
false
class
solution
return
(n &
(n -1)
)==0;
}}
class
solution
; edge2=pair;
}else
else}}
if(edge1!=null&&edge2!=null)
return lastedgecausecircle==null?edge2:edge1;
//如果是情況2、3,則根據有沒有碰到環返回 edge1 或 edge2
else
return lastedgecausecircle;
//否則就是情況1,返回那個導致環的最後出現的邊。
}private
intfind
(int node)
}
Leetcode 每日打卡20200918
給定乙個可包含重複數字的序列,返回所有不重複的全排列。示例 輸入 1 1,2 輸出 1,1,2 1,2,1 2,1,1 class solution private void dfs int nums,int cur set.add list else private void swap int n...
Leetcode每日一題打卡
原題 根據棧先進後出和佇列先進先出的不同特點予以以下實現,使用棧s1記錄佇列尾部元素,每次插入操作可以直接壓入棧s1中 在刪除元素時,為了刪除頭部元素,使用棧s2維護頭部元素。當s2不為空時,直接彈出棧頂元素即可。當s2為空時,就將s1中元素一次彈出而後壓入s2中,實現順序的反轉,s2棧頂元素就是佇...
LeetCode 每日 1 題 打卡刷題計畫
活動頁面 佇列 隊首出,隊尾進 先進先出 queue 的基本操作有 q.push x 隊尾 d.push back x 隊尾 d.push front x 隊首 q.pop d.pop back d.pop front struct listnode vector操作push back 在陣列的最後...