国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Bogosort排序算法

2019-11-06 06:41:01
字體:
來源:轉載
供稿:網友
import java.util.*;public class Bogosort {PRivate final static Random r = new Random();public static int[] verboseBogosort(int[] deck){System.out.println(toString(deck));do{deck = shuffle(deck);System.out.println(toString(deck));} while (!inOrder(deck));System.out.println(toString(deck));return deck;}private static boolean inOrder(int[] deck){for (int i = 0; i < deck.length - 1; i++){if (deck[i] > deck[i + 1]){return false;}}return true;}// assumes that the deck has at least two valuesprivate static int[] shuffle(int[] deck){int[] shuffledDeck = new int[deck.length];LinkedList ll = new LinkedList(deck[0]);for (int i = 1; i < deck.length; i++){ll.addNode(deck[i]);}//System.out.println(ll.toString());for (int count = 0; count < deck.length; count++){shuffledDeck[count] = ll.deleteNode(r.nextInt(ll.size()));//if (ll.size() > 0) System.out.println(ll.toString());//try{Thread.sleep(3000);} catch(Exception e){}}return shuffledDeck;}private static String toString(int a[]){StringBuilder result = new StringBuilder();for (int i = 0; i < a.length - 1; i++){result.append(a[i] + " ");}result.append(a[a.length - 1]);return result.toString();} }class LinkedList{private int size;private Node firstNode;private Node lastNode;public LinkedList(int firstValue){this.firstNode = this.lastNode = new Node(firstValue);this.size = 1;}public int size(){return this.size;}public void addNode(int value){Node newNode = new Node(value);lastNode.setNextNode(newNode);lastNode = newNode;size++;}public int deleteNode(int nthNode){//Node prevNode = null;//Node currNode = null;int result = -99999;if (nthNode == 0){result = this.firstNode.getValue();this.firstNode = firstNode.getNextNode();}else if (nthNode == this.size - 1){Node tempNode = this.firstNode;result = this.lastNode.getValue();for (int i = 1; i < size - 1; i++){tempNode = tempNode.getNextNode();}lastNode = tempNode;lastNode.setNextNode(null);}else{Node prevNode = this.firstNode;Node currNode = this.firstNode.getNextNode();for(int i = 1; i < nthNode; i++){prevNode = currNode;currNode = currNode.getNextNode();}result = currNode.getValue();prevNode.setNextNode(currNode.getNextNode());}size--;return result;}public String toString(){StringBuilder result = new StringBuilder();for(Node currNode = this.firstNode; currNode.getNextNode() != null; currNode = currNode.getNextNode()){result.append(currNode.getValue() + " -> ");}result.append(lastNode.getValue());return result.toString();}private class Node{private int value;private Node nextNode;public Node(){this.value = -1;this.nextNode = null;}public Node(int value){this.value = value;this.nextNode = null;}public Node(int value, Node nextNode){this.value = value;this.nextNode = nextNode;}public int getValue(){return this.value;}public Node getNextNode(){return this.nextNode;}public void setValue(int value){this.value = value;}public void setNextNode(Node nextNode){this.nextNode = nextNode;}}}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗甸县| 葫芦岛市| 红河县| 中西区| 通辽市| 怀仁县| 全椒县| 石楼县| 绥棱县| 申扎县| 金川县| 永平县| 甘洛县| 巧家县| 琼海市| 日照市| 客服| 江安县| 诸暨市| 家居| 扬中市| 湘乡市| 哈巴河县| 蒙山县| 镇坪县| 社会| 灵寿县| 屏东市| 西青区| 贵南县| 册亨县| 襄城县| 磐安县| 沽源县| 南城县| 昂仁县| 阿拉善右旗| 萝北县| 安福县| 安福县| 尤溪县|