原題描述:
給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。
你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。
示例:
給定 nums = [2, 7, 11, 15], target = 9
因為 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
**:
public int twosum(int nums, int target) {
int i,j; //初始化倆個變數i,j,用來儲存索引值
int result=new int[2]; //初始化陣列,用來儲存最後的執行結果
//雙層for迴圈控制查詢符合條件的數的索引
for(i=0;i注意:
下標相同的情況分析:
當nums陣列只有乙個元素時,外層迴圈的i=0,內層迴圈j=i+1=1,由於j此時不執行內迴圈,則j=0,則i=j=0,由於只有乙個元素,無法執行程式,則不輸出,直接打破迴圈。
又如:i=nums.length-1,此時的j也是nums.length-1,倆者值相等,此情況為nums陣列中沒有符合輸出的索引值。此時利用break退出程式。
資料結構 01day
題目鏈結 解題思路 建立兩個頭結點first 和 second 然後迴圈遍歷原來的鍊錶,將小於 x 的節點連線在first節點的後邊,大於或等於 x 的節點都連線在second節點後邊 將兩個新的鍊錶連線起來 執行用時 0 ms 記憶體消耗 38.9 mb class solution listno...
LeetCode 刷題日記01
找到乙個陣列第三大的數並返回這個數,如果沒有就返回最大的數。param nums return var thirdmax function nums 現在陣列中沒有重複元素了 nums.sort a,b b a return nums.length 2 nums 2 nums 0 tips 這道題包...
LEETCODE刷題01 顛倒整數01
為提高自己的專業技術,藝多不壓身,早上吃了飯就去了leetcode看了看,覺得挺有意思的。記錄一下答題過程吧 題目是這樣的 給定乙個範圍為 32 位 int 的整數,將其顛倒。例 1 輸入 123 輸出 321例 2 輸入 123 輸出 321 例 3 輸入 120 輸出 21 注意 假設我們的環境...