代碼隨想錄算法訓練營第二天| 977.有序數(shù)組的平方 ,209.長度最小的子數(shù)組 ,59.螺旋矩陣II

977.有序數(shù)組的平方

題目鏈接:https://leetcode.cn/problems/squares-of-a-sorted-array/

解答:https://programmercarl.com/0977.%E6%9C%89%E5%BA%8F%E6%95%B0%E7%BB%84%E7%9A%84%E5%B9%B3%E6%96%B9.html

看了雙指針的算法思路就可以自己寫出來了,主要還是思路更重要:找到負數(shù)和正數(shù)的分界線,然后用歸并排序

錯誤1.沒有考慮到整個數(shù)組都是負數(shù)的情況,這時候如果通過while(nums[i]<0)的方式來尋找分界線下標,就會循環(huán)到i=nums.length, nums[i],就越界了


209.長度最小的子數(shù)組

題目鏈接:https://leetcode.cn/problems/minimum-size-subarray-sum/

解答:https://programmercarl.com/0209.%E9%95%BF%E5%BA%A6%E6%9C%80%E5%B0%8F%E7%9A%84%E5%AD%90%E6%95%B0%E7%BB%84.html

使用滑動窗口(雙指針),我也是看了大概的思路自己寫出來了,當總和小于target時,就移動窗口的right指針向前,使窗口覆蓋范圍增加;如果總和大于等于target時,就移動窗口的left指針向前,使窗口覆蓋范圍減小,然后記錄更新窗口長度的最小值

錯誤1. if(right-left < minLength) 沒有加括號(感覺這個錯誤很粗心,但是又很容易犯錯)

應該是if((right-left)<minLength)


59.螺旋矩陣II

題目鏈接:https://leetcode.cn/problems/spiral-matrix-ii/

解答:https://programmercarl.com/0059.%E8%9E%BA%E6%97%8B%E7%9F%A9%E9%98%B5II.html

模擬順時針畫矩陣的過程:

填充上行從左到右

填充右列從上到下

填充下行從右到左

填充左列從下到上

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容