<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ?LeetCode刷題實(shí)戰(zhàn)280:擺動(dòng)排序

          共 2224字,需瀏覽 5分鐘

           ·

          2021-06-02 20:40

          算法的重要性,我就不多說了吧,想去大廠,就必須要經(jīng)過基礎(chǔ)知識(shí)和業(yè)務(wù)邏輯面試+算法面試。所以,為了提高大家的算法能力,這個(gè)公眾號后續(xù)每天帶大家做一道算法題,題目就從LeetCode上面選 !

          今天和大家聊的問題叫做 擺動(dòng)排序,我們先來看題面:
          https://leetcode-cn.com/problems/wiggle-sort/

          Given an unsorted array nums, reorder it 

          in-place such that nums[0] <= nums[1] >= nums[2] <= nums[3]....

          給一個(gè)沒有排序的數(shù)組,將其重新排序成nums[0] <= nums[1] >= nums[2] <= nums[3]....的樣子,要求in-place。

          示例

          輸入: nums = [3,5,2,1,6,4]
          輸出: 一個(gè)可能的解答是 [3,5,1,6,2,4]


          解題


          遍歷一遍數(shù)組, 如果是奇數(shù)位置并且其值比下一個(gè)大,則交換其值, 如果是偶數(shù)位置并且其值比下一個(gè)小, 則交換其值. 時(shí)間復(fù)雜度是O(N)。注意index和實(shí)際的位置差1,所以奇偶相反。


          public class Solution {
              public void wiggleSort(int[] nums) {
                  if (nums == null || nums.length < 2) return;
                  for (int i = 1; i < nums.length; i++) {
                      if ((i % 2 == 0 && nums[i] > nums[i - 1]) || (i % 2 == 1 && nums[i] < nums[i - 1])) {
                          int tmp = nums[i];
                          nums[i] = nums[i - 1];
                          nums[i - 1] = tmp;
                      }
                  }
              }
          }



          好了,今天的文章就到這里,如果覺得有所收獲,請順手點(diǎn)個(gè)在看或者轉(zhuǎn)發(fā)吧,你們的支持是我最大的動(dòng)力 。

          上期推文:

          LeetCode1-260題匯總,希望對你有點(diǎn)幫助!

          LeetCode刷題實(shí)戰(zhàn)261:以圖判樹

          LeetCode刷題實(shí)戰(zhàn)262:行程和用戶

          LeetCode刷題實(shí)戰(zhàn)263:丑數(shù)

          LeetCode刷題實(shí)戰(zhàn)264:丑數(shù) II

          LeetCode刷題實(shí)戰(zhàn)265:粉刷房子II

          LeetCode刷題實(shí)戰(zhàn)266:回文排列

          LeetCode刷題實(shí)戰(zhàn)267:回文排列II

          LeetCode刷題實(shí)戰(zhàn)268:丟失的數(shù)字

          LeetCode刷題實(shí)戰(zhàn)269:火星詞典

          LeetCode刷題實(shí)戰(zhàn)270:最接近的二叉搜索樹值

          LeetCode刷題實(shí)戰(zhàn)271:字符串的編碼與解碼

          LeetCode刷題實(shí)戰(zhàn)272:最接近的二叉搜索樹值 II

          LeetCode刷題實(shí)戰(zhàn)273:整數(shù)轉(zhuǎn)換英文表示

          LeetCode刷題實(shí)戰(zhàn)274:H指數(shù)

          LeetCode刷題實(shí)戰(zhàn)275:H 指數(shù) II

          LeetCode刷題實(shí)戰(zhàn)276:柵欄涂色

          LeetCode刷題實(shí)戰(zhàn)277:搜尋名人

          LeetCode刷題實(shí)戰(zhàn)278:第一個(gè)錯(cuò)誤的版本

          LeetCode刷題實(shí)戰(zhàn)279:完全平方數(shù)


          瀏覽 47
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  色色色网站 | 日韩三级麻豆 | 毛片片| 国产婷婷五月 | 成人做爰黄 片视频真人 |