letcode每日一題 對鍊錶進行插入排序

2022-07-09 07:00:19 字數 776 閱讀 8588

今天的每日一題主要考驗了鍊錶的操作和插入排序,綜合來說還是簡單的,記錄一下!!

題目描述:

**實現如:

public listnode insertionsortlist(listnode head) 

listnode headpoint=new listnode(-1);

headpoint.next=head;

listnode lastsorted=head,curr=head.next;

while (curr!=null)else

lastsorted.next=curr.next;

curr.next=prev.next;

prev.next=curr;

}curr=lastsorted.next;

}return headpoint.next;

}

思路:

1.應為這個題目的鍊錶是單向的,所以可以設定乙個頭結點指向鍊錶,這樣更便於操作

2.手繪了幾個步驟,大致如下:

鍊錶[4,3,2,1]

}

letcode每日一題 不同路徑

話不多說,我們上題目 方法一 動態規劃 我們用 f i,j 表示從左上角走到 i,j 的路徑數量,其中 i 和 j 的範圍分別是 0,m 和 0,n 由於我們每一步只能從向下或者向右移動一步,因此要想走到 i,j 如果向下走一步,那麼會從 i 1,j 走過來 如果向右走一步,那麼會從 i,j 1 走...

letcode每日一題 最大間距

今日每日一題,最大間距,一看難度困難,我想ctrl c再ctrl v,但是再一看題,嗯,我好想可以 我的 這道題的難點在於如何用線性的時空複雜度來解決。直接sort然後遍歷陣列當然可以解決問題,但是面試的時候這 種解法肯定是不能讓面試官滿意的。實現 如下 public int maximumgap ...

每日一題 反轉鍊錶

這道是牛客的題,給了鍊錶然後返回鍊錶的新表頭。拿到這道題首先肯定想到的是暴力求解,從表頭開始遍歷到尾,用尾元素作為新錶的表頭,然後遍歷尾元素的上乙個元素,鏈到新錶的最後然後不斷重複直到鍊錶的表頭鏈到新錶的尾巴 這樣有乙個很大的問題就是複雜度太高了,時間複雜度是o n n 這個時候我想到了肯定有簡單的...