亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

LeetCode 561:數(shù)組拆分 I Array Partition I

gnehc / 3499人閱讀

摘要:給定長(zhǎng)度為的數(shù)組你的任務(wù)是將這些數(shù)分成對(duì)例如,使得從到的總和最大。提示是正整數(shù)范圍在數(shù)組中的元素范圍在解題思路其實(shí)就是把數(shù)組排序,然后按順序每?jī)蓚€(gè)數(shù)既是一對(duì),每對(duì)的第一個(gè)數(shù)累加之和即為所求。就是考一下各類排序算法的性能。

文章全部來(lái)自公眾號(hào):愛寫bug

算法是一個(gè)程序的靈魂。
Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1, b1), (a2, b2), ..., (an, bn) which makes sum of min(ai, bi) for all i from 1 to n as large as possible.

給定長(zhǎng)度為 2n 的數(shù)組, 你的任務(wù)是將這些數(shù)分成 n 對(duì), 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得從1 到 n 的 min(ai, bi) 總和最大。

Example 1:

Input: [1,4,3,2]

Output: 4
Explanation: n is 2, and the maximum sum of pairs is 4 = min(1, 2) + min(3, 4).

Note:

n is a positive integer, which is in the range of [1, 10000].

All the integers in the array will be in the range of [-10000, 10000].

提示:

n 是正整數(shù),范圍在 [1, 10000].

數(shù)組中的元素范圍在 [-10000, 10000].

解題思路:

? 其實(shí)就是把 數(shù)組排序,然后按順序 每?jī)蓚€(gè)數(shù)既是一對(duì),每對(duì)的第一個(gè)數(shù)累加之和即為所求。就是考一下各類排序算法的性能。

先使用內(nèi)置 sort() 函數(shù)理解一下思路:

Java:

import java.util.Arrays;
class Solution {
    public int arrayPairSum(int[] nums) {
        Arrays.sort(nums);
        int sum=0;
        for (int i=0;i

擴(kuò)展:

維基百科上對(duì)排序算法介紹的非常詳細(xì),并且進(jìn)行了歸類比較,地址: https://zh.wikipedia.org/wiki/%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95

這里簡(jiǎn)單推薦兩個(gè):

快速排序(quick sort)—期望時(shí)間,最壞情況;對(duì)于大的、隨機(jī)數(shù)列表一般相信是最快的已知排序(C語(yǔ)言標(biāo)準(zhǔn)庫(kù)的qsort()排序用的就是快速排序算法,利用遞歸和分而治之思想)

桶排序(bucket sort)—;需要額外空間(典型的犧牲空間換時(shí)間)

冒泡排序、選擇排序都是比較簡(jiǎn)單容易理解,復(fù)雜度是 n^2 ,所以不再贅述。


文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/75142.html

相關(guān)文章

  • LeetCode 561數(shù)組拆分 I Array Partition I

    摘要:給定長(zhǎng)度為的數(shù)組你的任務(wù)是將這些數(shù)分成對(duì)例如,使得從到的總和最大。提示是正整數(shù)范圍在數(shù)組中的元素范圍在解題思路其實(shí)就是把數(shù)組排序,然后按順序每?jī)蓚€(gè)數(shù)既是一對(duì),每對(duì)的第一個(gè)數(shù)累加之和即為所求。就是考一下各類排序算法的性能。 文章全部來(lái)自公眾號(hào):愛寫bug 算法是一個(gè)程序的靈魂。Given an array of 2n integers, your task is to group the...

    wangtdgoodluck 評(píng)論0 收藏0
  • Leetcode PHP題解--D14 561. Array Partition I

    摘要:題目鏈接題目分析本題給了一個(gè)數(shù)組,要求將數(shù)組分為個(gè)只有個(gè)元素的一對(duì)。因此,要使每組中最大的數(shù)字和最小的數(shù)組之差最小,這樣才能使損失最小。當(dāng)分為兩組時(shí),每組取最小后,會(huì)得到。求和后為,比大。 561. Array Partition I 題目鏈接 561. Array Partition I 題目分析 本題給了一個(gè)數(shù)組,要求將數(shù)組分為n個(gè)只有2個(gè)元素的一對(duì)。 使得每對(duì)數(shù)字中最小的數(shù)加起...

    stonezhu 評(píng)論0 收藏0
  • 前端 | 每天一個(gè) LeetCode

    摘要:在線網(wǎng)站地址我的微信公眾號(hào)完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個(gè)題。這是項(xiàng)目地址歡迎一起交流學(xué)習(xí)。 這篇文章記錄我練習(xí)的 LeetCode 題目,語(yǔ)言 JavaScript。 在線網(wǎng)站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號(hào): showImg(htt...

    張漢慶 評(píng)論0 收藏0
  • 一些前端算法詳解 --- (不定時(shí)更新)

    摘要:也稱縮小增量排序,是直接插入排序算法的一種更高效的改進(jìn)版本。希爾排序是非穩(wěn)定排序算法。該方法因於年提出而得名。 前言 因?yàn)楸容^隨心所欲,所以我不按難度分享算法,所以你們會(huì)看到有時(shí)候順序有變化,因?yàn)槲野l(fā)表的時(shí)候會(huì)按照難度修改下位置,盡量讓你們看的時(shí)候能從簡(jiǎn)單開始,以后每次更新都加個(gè)更新時(shí)間好了,讓你們知道我進(jìn)度.新增計(jì)時(shí)函數(shù)直觀對(duì)比效率并且因?yàn)橘Y料比較雜,很多都是我個(gè)人理解說(shuō)法,如果有發(fā)...

    Baaaan 評(píng)論0 收藏0
  • [Leetcode - Dynamic Programming] Partition Equal S

    摘要:背包問(wèn)題假設(shè)有個(gè)寶石,只有一個(gè)容量為的背包,且第個(gè)寶石所對(duì)應(yīng)的重量和價(jià)值為和求裝哪些寶石可以獲得最大的價(jià)值收益思路我們將個(gè)寶石進(jìn)行編號(hào),尋找的狀態(tài)和狀態(tài)轉(zhuǎn)移方程。我們用表示將前個(gè)寶石裝到剩余容量為的背包中,那么久很容易得到狀態(tài)轉(zhuǎn)移方程了。 Partition Equal Subset Sum Given a non-empty array containing only posi...

    qpal 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<