69. 計算並返回 x 的平方根,其中 x 是非負整數。
6分鐘寫完,但對於**不是很滿意,因為這裡要考慮乙個溢位的問題,所以**感覺有點醜。
int mysqrt(int x)
return 0;
}
int mysqrt(int x)
return min;
}
77. 假設你正在爬樓梯。需要 n 階你才能到達樓頂。
11分鐘寫完。這題分析完之後,剛好就是兔子數列,一開始使用遞迴,但是到45的時候已經超時了。後面使用了相當基礎的技巧:兔子數列中,用迴圈來取代遞迴,可以使得時間節省非常非常多。這裡要注意乙個小小的邊界條件,prepre的賦值要在pre之前,否則pre裡面的數值會被覆蓋。
int climbstairs(int n)
return now;
}
83.給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。
4分鐘寫完,這是因為在《王道+嚴書》專欄裡面也有過這樣的題目,所以寫的很快。
struct listnode* deleteduplicates(struct listnode* head)
return head;
}
88. 合併兩個有序陣列
16分鐘寫完,實際上10分鐘左右就已經寫完了。我實在是不同這兩個numsize是用來幹啥的,靠,我之前已知以為兩個numsize是n或者m,所以在此耽誤了時間。另外,我使用從後往前的方法,比最壞的時間還是要優秀一些。此外,這道題我使用了經典的合併方法,先用乙個while處理兩個哨兵均大於等於0的情況,再用另乙個while除了剩下的還沒有處理的那些
void merge(int* nums1, int nums1size, int m, int* nums2, int nums2size, int n)
while(walk2 >= 0)
nums1[walknew--] = nums2[walk2--];
}
100. 給定兩個二叉樹,編寫乙個函式來檢驗它們是否相同。
樹作為一種遞迴結構,許多題都可以考慮遞迴的思想。這裡我們同樣使用了遞迴的思想,3分半就寫完了。
/**
* definition for a binary tree node.
* struct treenode ;
*/bool issametree(struct treenode* p, struct treenode* q)
一 leetcode 簡單題 2
21.將兩個公升序鍊錶合併為乙個新的 公升序 鍊錶並返回。新煉表是通過拼接給定的兩個鍊錶的所有節點組成的。一次ac,13分鐘寫完,中途接了一次中國聯通推廣 思路簡單 struct listnode mergetwolists struct listnode l1,struct listnode l2...
leetcode簡單題第一題python3
題目 給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1...
LeetCode題庫 簡單題
leetcode 題目鏈結 反轉一半 負數不可能是回文 個位數一定是回文 0是回文 問題 如何反轉一半的數字 演算法例項 bool ispalindrome int x if x 10 x為個位數 一定是回文 return1 int revernum 0 while x revernum retur...