Maison interface Web js tutoriel JavaScript 产生不重复的随机数三种实现思路_javascript技巧

JavaScript 产生不重复的随机数三种实现思路_javascript技巧

May 16, 2016 pm 05:46 PM
随机数

在 JavaScript 中,一般产生的随机数会重复,但是有时我们需要不重复的随机数,如何实现?下面就来讲解三种方法产生不重复的随机数,并进行比较,看那种方法效率高。

方法一
思路:首先创建一个1到3000的数组,每次取一个数,然后去除数组中取出的这个数, 这样就可以实现永不重复。

复制代码 代码如下:



性能:耗时 1528 毫秒。

方法二
思路:对方法一的slice方法进行改进,以提高效率。还是从原数组取出一个数, 然后让原数组的这个位置赋值为null 。下一次取数时判断是否为null,如果是null就不取。
复制代码 代码如下:



性能:耗时 290 毫秒。

方法三
思路:把原数组打散,然后再依次输出, 这样也可以做到随机永不重复,且效率更高。
复制代码 代码如下:



性能:耗时 229 毫秒。
通过性能分析,得出方法三为最佳方案。
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment créer un générateur de nombres aléatoires dans Excel Comment créer un générateur de nombres aléatoires dans Excel Apr 14, 2023 am 09:46 AM

Comment utiliser RANDBETWEEN pour générer des nombres aléatoires dans Excel Si vous souhaitez générer des nombres aléatoires dans une plage spécifique, la fonction RANDBETWEEN est un moyen rapide et simple de le faire. Cela vous permet de générer des entiers aléatoires entre deux valeurs de votre choix. Générez des nombres aléatoires dans Excel à l'aide de RANDBETWEEN : cliquez sur la cellule où vous souhaitez que le premier nombre aléatoire apparaisse. Tapez =RANDBETWEEN(1,500) en remplaçant "1" par le nombre aléatoire le plus bas que vous souhaitez générer et "500" par

Méthode d'optimisation des performances de génération de nombres aléatoires Java Méthode d'optimisation des performances de génération de nombres aléatoires Java Jun 30, 2023 pm 12:25 PM

Comment optimiser les performances de génération de nombres aléatoires dans le développement Java Les nombres aléatoires sont largement utilisés en informatique, notamment dans la cryptographie, la simulation, les jeux et d'autres domaines. Dans le développement Java, nous devons souvent générer des nombres aléatoires pour répondre à divers besoins. Cependant, les performances de la génération de nombres aléatoires font souvent partie des préoccupations des développeurs. Cet article explorera comment optimiser les performances de génération de nombres aléatoires dans le développement Java. La classe ThreadLocalRandom a été introduite dans Java7 à l'aide de la classe ThreadLocalRandom

Générez des nombres aléatoires à l'aide de la fonction crypto/rand.Read de la documentation du langage Go Générez des nombres aléatoires à l'aide de la fonction crypto/rand.Read de la documentation du langage Go Nov 04, 2023 pm 03:39 PM

Générer des nombres aléatoires à l'aide du langage Go Le langage Go est un langage de programmation moderne, concis et efficace qui fournit de nombreuses bibliothèques intégrées pour générer des nombres aléatoires. Parmi eux, le package crypto/rand fournit une série de fonctions permettant de générer des nombres aléatoires sécurisés. Dans cet article, nous allons générer des nombres aléatoires en utilisant la fonction Read du package crypto/rand. Tout d’abord, nous devons importer le package crypto/rand et créer un tableau d’octets pour stocker les nombres aléatoires. L'exemple de code est le suivant : packagemain

Comment générer des nombres aléatoires et des codes de vérification à l'aide de tableaux PHP Comment générer des nombres aléatoires et des codes de vérification à l'aide de tableaux PHP Jul 16, 2023 am 08:31 AM

Comment utiliser des tableaux PHP pour générer des nombres aléatoires et des codes de vérification Les nombres aléatoires et les codes de vérification sont très courants lors du développement de sites Web et d'applications. PHP propose diverses méthodes pour générer des nombres aléatoires et des codes de vérification. Cet article explique comment utiliser les tableaux PHP pour générer des nombres aléatoires et des codes de vérification, avec des exemples de code correspondants. 1. Générer des nombres aléatoires En PHP, nous pouvons utiliser la fonction rand() pour générer des nombres aléatoires. La fonction rand() nécessite deux paramètres, la valeur minimale et la valeur maximale. L'exemple de code est le suivant : $min=1;$max=

Compréhension approfondie des méthodes et applications de génération de nombres aléatoires dans numpy Compréhension approfondie des méthodes et applications de génération de nombres aléatoires dans numpy Jan 03, 2024 am 08:23 AM

Explorez la méthode et l'application de NumPy pour générer des nombres aléatoires Introduction : Les nombres aléatoires sont largement utilisés en informatique et en statistiques, comme les expériences de simulation, la génération de données et la sélection de fonctionnalités. En Python, la bibliothèque NumPy (NumericalPython) est une puissante bibliothèque de calcul numérique qui fournit de nombreuses fonctions pour générer des nombres aléatoires. Cet article explorera la méthode de génération de nombres aléatoires dans NumPy et donnera des exemples de code spécifiques. 1. Fonction de génération de nombres aléatoires de NumPy fournie par NumPy

Comment éviter de générer des nombres aléatoires en double dans Golang ? Comment éviter de générer des nombres aléatoires en double dans Golang ? Jun 01, 2024 pm 04:46 PM

Comment éviter de générer des nombres aléatoires en double dans Golang : créez un nouveau générateur de nombres aléatoires rand.New (rand.Source). Utilisez rand.NewSource(time.Now().UnixNano()) comme source d'entropie. Utilisez rand.Intn(n) pour générer des entiers aléatoires.

Comment générer des nombres aléatoires dans la fonction Golang lambda ? Comment générer des nombres aléatoires dans la fonction Golang lambda ? Jun 05, 2024 pm 12:22 PM

Pour générer des nombres aléatoires dans la fonction Golambda, vous devez utiliser la bibliothèque math/rand : importez la bibliothèque et définissez la graine pour garantir des sorties différentes. Utilisez rand.Intn(max) pour générer un entier aléatoire (plage [0,max)). Utilisez rand.Float64() pour générer une décimale aléatoire (plage [0.0,1.0)). Utilisez rand.ReadStringN(n) pour générer une chaîne aléatoire (de longueur n).

Comment utiliser la méthode Random.nextInt() pour générer des nombres aléatoires en Java ? Comment utiliser la méthode Random.nextInt() pour générer des nombres aléatoires en Java ? Nov 18, 2023 pm 03:44 PM

Comment utiliser la méthode Random.nextInt() pour générer des nombres aléatoires en Java ? Les nombres aléatoires sont largement utilisés en informatique et peuvent être utilisés pour générer des mots de passe, des événements aléatoires dans les jeux, un échantillonnage aléatoire en science des données, etc. Java fournit la classe Random pour générer des nombres aléatoires, et la méthode nextInt() peut être utilisée pour générer un entier aléatoire. Ci-dessous, je présenterai comment utiliser la méthode Random.nextInt() pour générer des nombres aléatoires et fournirai des exemples de code spécifiques. Premièrement, nous avons besoin

See all articles