女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

LeetCode初級算法-設計問題01:Shuffle an Array (打亂數組)

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2020-12-10 22:21 ? 次閱讀

LeetCode初級算法--設計問題01:Shuffle an Array (打亂數組)

一、引子

這是由LeetCode官方推出的的經典面試題目清單~
這個模塊對應的是探索的初級算法~旨在幫助入門算法。我們第一遍刷的是leetcode推薦的題目。

二、題目

打亂一個沒有重復元素的數組。

示例:

// 以數字集合 1, 2 和 3 初始化數組。
int[] nums = {1,2,3};
Solution solution = new Solution(nums);

// 打亂數組 [1,2,3] 并返回結果。任何 [1,2,3]的排列返回的概率應該相同。
solution.shuffle();

// 重設數組到它的初始狀態[1,2,3]。
solution.reset();

// 隨機返回數組[1,2,3]打亂后的結果。
solution.shuffle();

1、思路

遍歷數組每個位置,每次都隨機生成一個坐標位置,然后交換當前位置和隨機位置的數字,這樣如果數組有n個數字,那么也隨機交換了n組位置,從而達到了洗牌的目的。

2、編程實現

python

class Solution(object):

    def __init__(self, nums):
        """
        :type nums: List[int]
        """
        self.data = nums

    def reset(self):
        """
        Resets the array to its original configuration and return it.
        :rtype: List[int]
        """
        return self.data

    def shuffle(self):
        """
        Returns a random shuffling of the array.
        :rtype: List[int]
        """
        # 方法一:
        # ans = copy.deepcopy(self.data)
        # random.shuffle(ans)
        # return ans
        #方法二
        ans = copy.deepcopy(self.data)
        for i in range(len(ans)):
            j = random.randint(i, len(ans)-1)
            ans[i], ans[j] = ans[j], ans[i]
        return ans


# Your Solution object will be instantiated and called as such:
# obj = Solution(nums)
# param_1 = obj.reset()
# param_2 = obj.shuffle()

本文由博客一文多發平臺 OpenWrite 發布!

審核編輯 黃昊宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 人工智能
    +關注

    關注

    1804

    文章

    48736

    瀏覽量

    246659
  • 機器學習
    +關注

    關注

    66

    文章

    8492

    瀏覽量

    134122
  • 深度學習
    +關注

    關注

    73

    文章

    5555

    瀏覽量

    122495
  • leetcode
    +關注

    關注

    0

    文章

    20

    瀏覽量

    2429
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    pads9.5在creat array時,會打亂我排列好的元器件,是怎么回事?

    ` 本帖最后由 a3531517 于 2015-12-30 17:32 編輯 pads9.5在creat array時,會打亂我排列好的元器件,是怎么回事?`
    發表于 12-30 17:30

    請教大神關于IMAQ模塊中的問題:IMAQCreate與 IMAQ Image To Array函數的算法原理是什么?

    原理與MATLAB中的rgb2gray函數有區別嗎?IMAQ Image To Array函數是怎么講圖片轉成像素灰度的二維數組呢?其算法原理有是什么呢?謝謝。
    發表于 03-12 14:11

    詳解Spark Shuffle原理及Shuffle操作問題解決

    Spark Shuffle原理、Shuffle操作問題解決和參數調優
    發表于 04-29 17:11

    請問LeetCode448如何找到所有數組中消失的數字?

    LeetCode448如何找到所有數組中消失數字的方法
    發表于 11-05 07:46

    數組元素超過9個如何根據 Array 自動創建 Cluster

    數組元素超過9個如何根據 Array 自動創建 Cluster
    發表于 04-10 14:28

    Java數組算法試題

    Java數組算法試題Java數組算法試題Java數組算法試題
    發表于 01-15 16:16 ?0次下載

    一種散亂數據點云快速簡化算法_遲源

    一種散亂數據點云快速簡化算法_遲源
    發表于 03-19 11:46 ?0次下載

    LeetCode 215. Kth Largest Element in an Array

    LeetCode 215. Kth Largest Element in an ArrayDescription Find the kth largest element
    發表于 01-17 01:46 ?477次閱讀

    LabVIEW初級教程之數組和簇的相關例程免費下載

    本文檔的主要內容詳細介紹的是LabVIEW初級教程之數組和簇的相關例程免費下載。
    發表于 01-15 09:59 ?22次下載
    LabVIEW<b class='flag-5'>初級</b>教程之<b class='flag-5'>數組</b>和簇的相關例程免費下載

    LeetCode初級算法-其他01:位1的個數

    搜索微信公眾號:'AI-ming3526'或者'計算機視覺這件小事' 獲取更多算法、機器學習干貨 csdn:[鏈接] csdn:[鏈接] github:[鏈接]
    的頭像 發表于 12-10 22:17 ?467次閱讀

    LeetCode初級算法-設計問題02:最小棧

    搜索微信公眾號:'AI-ming3526'或者'計算機視覺這件小事' 獲取更多算法、機器學習干貨 csdn:[鏈接] csdn:[鏈接] github:[鏈接]
    的頭像 發表于 12-10 22:21 ?498次閱讀

    LeetCode初級算法-動態規劃01:爬樓梯

    搜索微信公眾號:'AI-ming3526'或者'計算機視覺這件小事' 獲取更多算法、機器學習干貨 csdn:[鏈接] csdn:[鏈接] github:[鏈接]
    的頭像 發表于 12-10 22:21 ?556次閱讀

    ARRAY 數據類型的變量

    中,系統將提供自動完成功能。 將打開“數組”對話框。 在“數據類型”文本框中,指定數組元素的數據類型。 在“ARRAY 限值”(ARRAY limits) 輸入字段中,指定各維度的上限
    的頭像 發表于 07-06 11:08 ?1624次閱讀

    ?數組和C++ std::array詳解

    std::array是C++容器庫提供的一個固定大小數組的容器。其與內置的數組相比,是一種更安全、更容易使用的數組類型。
    的頭像 發表于 07-19 11:02 ?1394次閱讀
    ?<b class='flag-5'>數組</b>和C++ std::<b class='flag-5'>array</b>詳解

    什么是數組?數組有什么用?數組的使用方法

    數組Array)是有序的元素序列。
    的頭像 發表于 11-08 14:58 ?2069次閱讀
    什么是<b class='flag-5'>數組</b>?<b class='flag-5'>數組</b>有什么用?<b class='flag-5'>數組</b>的使用方法