class
solution
//行的個數
int rows= matrix.length;
//列的個數
int cols=matrix[0]
.length;
int i=0;
int j=cols-1;
while
(i=0)
else
if(matrix[i]
[j]else
}return
false;}
}
class
solution
int[
] nums =
newint
[count]
; node = head;
for(
int i = count -
1; i >=0;
--i)
return nums;
}}
class
cqueue
public
void
(int value)
public
intdeletehead()
while
(!s1.
empty()
)int num=s2.
peek()
; s2.
pop();
while
(!s2.
empty()
)return num;
}}
class
solution
if(cur==head)
else
return head;
}}
class
solution
while
(left < right && nums[right]%2
==0)if
(left < right)
}return nums;
}}
class
solution
while
(frontnode !=null)
return behindnode;
}}
//第一種方法
class
solution
return pre;}}
//第二種方法
//用於反轉整個鍊錶
public
void
reverse()
reverse
(head.next);}
//反轉指定的結點,並把反轉後的結點返回
public node reverse
(node curr)
//遞迴反轉當前結點,反轉值就是鍊錶反轉後,當前結點的上乙個結點
node pre =
reverse
(curr.next)
;//讓返回的結點的下乙個結點變為當前結點;
pre.next=curr;
//當前結點的下乙個結點變為null
curr.next=null;
return curr;
}
class
solution
else
}//若其中乙個不為空
if(l1!=null)
if(l2!=null)
return newnode.next;
}}
class
solution
int col=matrix[0]
.length;
int[
] nums=
newint
[row*col]
;int index=0;
int left=
0,top=
0,right=col-
1,bottom=row-1;
while
(true)if
(++top>bottom)
//從上往下走
for(
int i=top;i<=bottom;i++)if
(--right//從右往左走
for(
int i=right;i>=left;i--)if
(--bottom//從下往上走
for(
int i=bottom;i>=top;i--)if
(++left>right)
}return nums;
}}
力扣刷題記錄05
題目分類 二分查詢 時間 2020 09 09 題目一 兩數之和 兩數之和 ii 輸入有序陣列 給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 ind...
力扣刷題記錄2
第一題是每日一題的簡單題。需要記的並不多,一是用迭代器對vector的一些基本操作。可以參考這裡 for vector iterator iter num.begin iter num.end iter 另外是快排的思想。這種思想實用性很廣,即使不需要排序,在找出最大的k個數,對陣列進行分割 以中間...
力扣刷題記錄10
三角形的最大周長 看到這個題目,我想到了排序後從最大的中挑選,但遇到了點困難,一方面是無法記錄哪個是最大的點,這樣每次都要判斷。另一方面是根據題目要求,每個數只能用一次,要記錄下當前哪些是已經被使用了的。看到題解之後感覺自己是個智障。class solution return0 下次貪心時候也要動動...