<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      六六六六六六

      83. 刪除排序鏈表中的重復元素

      給定一個已排序的鏈表的頭 head , 刪除所有重復的元素,使每個元素只出現一次 。返回 已排序的鏈表 。

       示例 1:

       

      輸入:head = [1,1,2]輸出:[1,2]

       

      c的思路做了半天發現怎么寫都不對,都是沒有這個目標,最后受不了了去看了評論,原來是有專門函數的。我真的會謝,我聽的課里為什么沒有講這種嘞!一直講的都是思路。我還以為java里面鏈表沒有特殊的函數,枯了

      代碼如下:

      class Solution {

          public ListNode deleteDuplicates(ListNode head) {

              if(head==null||head.next==null) return head;

              if(head.val==head.next.val){

                  head= deleteDuplicates(head.next);

              }else {

                  head.next = deleteDuplicates(head.next);

              }

                  

              return head;

          }

          

      }

       

       

      88. 合并兩個有序數組

      給你兩個按 非遞減順序 排列的整數數組 nums1 nums2,另有兩個整數 m n ,分別表示 nums1 nums2 中的元素數目。

       

      請你 合并 nums2 nums1 中,使合并后的數組同樣按 非遞減順序 排列。

       

      注意:最終,合并后數組不應由函數返回,而是存儲在數組 nums1 中。為了應對這種情況,nums1 的初始長度為 m + n,其中前 m 個元素表示應合并的元素,后 n 個元素為 0 ,應忽略。nums2 的長度為 n

       

       

       

      來源:力扣(LeetCode

      鏈接:https://leetcode-cn.com/problems/merge-sorted-array

      要求原地改造,所以小偷一波雞,不過挺麻煩的,先把nums1中要排序的部分賦值給另一個數組,然后將兩個數組在循環時比較直接放入nums1覆蓋掉原先值即可。

      代碼如下:

      class Solution {

          public void merge(int[] nums1, int m, int[] nums2, int n) {

              if(m==0&&n!=0){

                  for(int i=0;i<n;i++){

                      nums1[i]=nums2[i];

                  }

              } 

              if(n!=0&&m!=0){

                  int[] n1=new int[m];

                  int flag1=0;

                  int flag2=0;

                  for(int i=0;i<m;i++){

                      n1[i]=nums1[i];

                  }

                  for(int i=0;i<m+n;i++){

                      if(flag1==m){

                          nums1[i]=nums2[flag2];

                          flag2++;

                          continue;

                      }

                      if(flag2==n){

                          nums1[i]=n1[flag1];

                          flag1++;

                          continue;

                      }

                      if(n1[flag1]<=nums2[flag2]){

                          nums1[i]=n1[flag1];

                          flag1++;

                      }else{

                          nums1[i]=nums2[flag2];

                          flag2++;

                      }

                  }

              }

          }

      }

      看了評論區,發現一種非常簡單的思路,就是把大的往后填充即可,代碼如下:

      public void merge(int[] nums1, int m, int[] nums2, int n) {

              if(n == 0) return;

              int i = n-- + m-- -1;

              while(n > -1){

                  nums1[i--] = m < 0 || nums2[n] > nums1[m] ? nums2[n--] : nums1[m--];

              }

          }

      看了一眼后續的簡單題全部都是關于樹的了,但是說實話只有個概念,特別是在java里,完全不知道怎么操作,所以在b站上找了學習視頻看,怕聽不懂就從頭開始看了,老師講的還是很不錯的。聽著很有興趣。不過以后是不是要開始刷中等的題了,看了幾眼感覺好難啊。

      posted @ 2022-03-20 00:58  水煮小白菜  閱讀(126)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 色噜噜亚洲男人的天堂| 亚洲男女内射在线播放| 女人扒开腿让男人桶到爽| 亚洲成片在线看一区二区| 天堂亚洲免费视频| 国产在线精品成人一区二区| 亚洲精品tv久久久久久久久久| 久久狠狠高潮亚洲精品夜色| 一区二区丝袜美腿视频| 97色伦97色伦国产| 精品激情视频一区二区三区| 久9re热视频这里只有精品免费| 精品无码国产日韩制服丝袜| √新版天堂资源在线资源| 亚洲天堂av日韩精品| 国产综合视频一区二区三区| 韩国三级+mp4| 亚洲精品在线视频自拍| 91密桃精品国产91久久| 国内精品大秀视频日韩精品| 国产成人午夜一区二区三区| 精品久久久久久无码人妻蜜桃| 男人扒开添女人下部免费视频| 欧美熟妇乱子伦XX视频| 国产成人无码aa片免费看| 国语对白刺激在线视频国产网红 | 亚洲国产精品一二三区| 欧美高清精品一区二区| 亚洲国产精品无码观看久久 | 日本亚洲欧洲无免费码在线| 丰满人妻无码∧v区视频| 国产中文字幕精品喷潮| 极品人妻videosss人妻| 美女一区二区三区亚洲麻豆| 亚洲人成网站77777在线观看| 九台市| 国产精品无码素人福利不卡| 亚洲中文字幕精品久久久久久动漫| 国产欧美综合在线观看第十页| 99久久机热/这里只有精品| 亚洲熟女乱综合一区二区三区|