📜  打乱向量元素的Java程序

📅  最后修改于: 2022-05-13 01:55:50.001000             🧑  作者: Mango

打乱向量元素的Java程序

向量基本上属于遗留类,但现在它与集合完全兼容。 Java有许多内置函数来对集合或其他数据类型执行不同的操作,其中之一是shuffle。使用 Collections.shuffle() 方法来随机播放 Vector 元素。 Collections 类的 shuffle 方法使用默认的随机源对指定的 Vector 对象的元素进行混洗。它随机排列传入参数的 Vector 元素。

shuffle() 方法的应用

  • 它用于加密应用程序。
  • 为付款字段生成唯一的交易编号。
  • 火箭、卫星、飞机、密码学中的软件利用随机化来获得算法良好结果的高概率。

Collections shuffle函数也可以通过两种方式调用:

  1. 指定随机性的随机参数。
  2. 无参数。

洗牌方法 使用默认的随机源从 Vector 中选择随机元素。这里的这个函数不需要太多时间并且以线性时间运行,每次执行的结果可能不同。

类层次结构:

java
   ↳ util

      ↳ Collections 

句法:

Collections.shuffle(vector).

参数:您将传递的 Vector 将被打乱。

返回: Shuffle函数将 Vector 元素打乱。

例子:

Java
// Java Program to shuffle Vector Elements
  
// Importing libraries
import java.util.Vector;
import java.util.Collections;
  
public class GFG {
  
    // Main driver method
    public static void main(String[] args)
    {
  
        // Create a Vector object
        Vector vec = new Vector();
  
        // Add elements to Vector(Random)
        vec.add("5");
        vec.add("6");
        vec.add("7");
        vec.add("8");
        vec.add("9");
  
        // Prints vector element before Shuffling
        System.out.println("Original Vector : " + vec);
  
        // The shuffle method of the Collections class
        Collections.shuffle(vec);
  
        // Prints vector element after Shuffling and
        // each time executed the result can be different
        System.out.println("After shuffling : " + vec);
    }
}


Java
// Java Program to shuffle Vector Elements
  
// Importing java libraries
import java.util.*;
import java.util.Vector;
import java.util.Collections;
  
public class GFG {
  
    // Main driver method
    public static void main(String[] args)
    {
  
        // Create a Vector object
        Vector vec = new Vector();
  
        // Add elements to Vector (Random)
        vec.add("geeksforgeeks");
        vec.add("course");
        vec.add("practice");
        vec.add("archive");
        vec.add("interview");
  
        // Prints vector element before Shuffling
        System.out.println("Original Vector : " + vec);
  
        // The Random Function
        Collections.shuffle(vec, new Random());
        System.out.println(
            "\nShuffled Vector with Random() : \n" + vec);
  
        // Random(3) to shuffle given vector
        Collections.shuffle(vec, new Random(3));
        System.out.println(
            "\nShuffled Vector with Random(3) : \n" + vec);
  
        // Random(3) to shuffle given list
        Collections.shuffle(vec, new Random(5));
        System.out.println(
            "\nShuffled Vector with Random(5) : \n" + vec);
    }
}


输出:

Original Vector : [5, 6, 7, 8, 9]

After shuffling, Vector : [8, 9, 5, 6, 7]

使用随机函数对向量进行混洗,这将成为随机性的来源。

句法:

Collections.shuffle(Vector, Random random)

例子:

Java

// Java Program to shuffle Vector Elements
  
// Importing java libraries
import java.util.*;
import java.util.Vector;
import java.util.Collections;
  
public class GFG {
  
    // Main driver method
    public static void main(String[] args)
    {
  
        // Create a Vector object
        Vector vec = new Vector();
  
        // Add elements to Vector (Random)
        vec.add("geeksforgeeks");
        vec.add("course");
        vec.add("practice");
        vec.add("archive");
        vec.add("interview");
  
        // Prints vector element before Shuffling
        System.out.println("Original Vector : " + vec);
  
        // The Random Function
        Collections.shuffle(vec, new Random());
        System.out.println(
            "\nShuffled Vector with Random() : \n" + vec);
  
        // Random(3) to shuffle given vector
        Collections.shuffle(vec, new Random(3));
        System.out.println(
            "\nShuffled Vector with Random(3) : \n" + vec);
  
        // Random(3) to shuffle given list
        Collections.shuffle(vec, new Random(5));
        System.out.println(
            "\nShuffled Vector with Random(5) : \n" + vec);
    }
}

输出:

Original Vector : [geeksforgeeks, course, practice, archive, interview]

Shuffled Vector with Random() : 
[interview, practice, geeksforgeeks, archive, course]

Shuffled Vector with Random(3) : 
[archive, practice, interview, geeksforgeeks, course]

Shuffled Vector with Random(5) : 
[geeksforgeeks, practice, course, archive, interview]