"함수 shuffle()"의 두 판 사이의 차이

 
(사용자 3명의 중간 판 46개는 보이지 않습니다)
1번째 줄: 1번째 줄:
[[category: 랜덤]]
[[category: Array]]
[[category: Array]]
;shuffle
;Collections.shuffle
==Go==
[[category: Go]]
{{참고|Go Shuffle()}}
<syntaxhighlight lang='go' run>
package main
import (
    "fmt"
    "math/rand"
)
func main() {
    a := []string{"Apple", "Banana", "Orange", "Mango"}
    rand.Shuffle(len(a), func(i, j int) { a[i], a[j] = a[j], a[i] })
    fmt.Println(a)
}
</syntaxhighlight>
==Java==
[[category: Java]]
{{참고|자바 shuffle()}}
<syntaxhighlight lang='Java' run>
import java.util.Arrays;
import java.util.List;
import java.util.Collections;
public class MyClass {
    public static void main(String args[]) {
        List<String> list = Arrays.asList("Apple", "Banana", "Orange", "Mango");
        Collections.shuffle(list);
        for (String str : list) {
            System.out.println(str);
        }
    }
}
</syntaxhighlight>
==JavaScript==
[[category: JavaScript]]
<syntaxhighlight lang='JavaScript' run>
let array = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
let shuffled = array
  .map(a => ([Math.random(),a]))
  .sort((a,b) => a[0]-b[0])
  .map(a => a[1])
console.log( shuffled );
</syntaxhighlight>
<syntaxhighlight lang='JavaScript' run>
let array = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
array.map((el, i, arr) => {
  let r = ~~(Math.random() * arr.length);
  arr[i] = arr[r];
  arr[r] = el;
  return arr;
})[0];
console.log(array);
</syntaxhighlight>
===jQuery===
[[category: jQuery]]
<syntaxhighlight lang='html5'>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
(function($){
    $.shuffle = function(arr) {
        for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
        return arr;
    }
})(jQuery);
var fruits = ["Apple", "Banana", "Orange", "Mango"];
$.shuffle(fruits);
console.log(fruits);
// ["Orange", "Mango", "Apple", "Banana"]
</script>
</syntaxhighlight>


==PHP==
==PHP==
[[category: PHP]]
[[category: PHP]]
<source lang='PHP'>
{{참고|PHP shuffle()}}
$arr = array("Apple", "Banana", "Orange", "Mango");
<syntaxhighlight lang='PHP' run>
$arr = ["Apple", "Banana", "Orange", "Mango"];
shuffle($arr);
shuffle($arr);
print_r($arr);
print_r($arr);
// Array
</syntaxhighlight>
// (
 
//    [0] => Mango
==Python==
//    [1] => Orange
{{참고|파이썬 shuffle()}}
//    [2] => Apple
[[category: Python]]
//    [3] => Banana
<syntaxhighlight lang='python' run>
// )
import random
</source>
fruits = ["Apple", "Banana", "Orange", "Mango"]
random.shuffle(fruits)
print( fruits )
</syntaxhighlight>
 
==Ruby==
[[category: Ruby]]
<syntaxhighlight lang='Ruby' run>
fruits = ["Apple", "Banana", "Orange", "Mango"]
shuffled = fruits.sort{ rand }
puts shuffled
</syntaxhighlight>


==같이 보기==
==같이 보기==
*[[array]]
*[[함수 get_random_element()]]
*[[함수 array()]]
*[[함수 sort()]]
*[[함수 first()]]
*[[셔플링]]

2021년 6월 24일 (목) 10:52 기준 최신판

shuffle
Collections.shuffle

1 Go[ | ]

package main

import (
    "fmt"
    "math/rand"
)

func main() {
    a := []string{"Apple", "Banana", "Orange", "Mango"}
    rand.Shuffle(len(a), func(i, j int) { a[i], a[j] = a[j], a[i] })
    fmt.Println(a)
}

2 Java[ | ]

import java.util.Arrays;
import java.util.List;
import java.util.Collections;
public class MyClass {
    public static void main(String args[]) {
        List<String> list = Arrays.asList("Apple", "Banana", "Orange", "Mango");
        Collections.shuffle(list);
        for (String str : list) {
            System.out.println(str);
        }
    }
}

3 JavaScript[ | ]

let array = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
let shuffled = array
  .map(a => ([Math.random(),a]))
  .sort((a,b) => a[0]-b[0])
  .map(a => a[1])
console.log( shuffled );
let array = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
array.map((el, i, arr) => {
  let r = ~~(Math.random() * arr.length);
  arr[i] = arr[r];
  arr[r] = el;
  return arr;
})[0];
console.log(array);

3.1 jQuery[ | ]

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
(function($){
    $.shuffle = function(arr) {
        for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
        return arr;
    }
})(jQuery);

var fruits = ["Apple", "Banana", "Orange", "Mango"];
$.shuffle(fruits);
console.log(fruits);
// ["Orange", "Mango", "Apple", "Banana"]
</script>

4 PHP[ | ]

$arr = ["Apple", "Banana", "Orange", "Mango"];
shuffle($arr);
print_r($arr);

5 Python[ | ]

import random
fruits = ["Apple", "Banana", "Orange", "Mango"]
random.shuffle(fruits)
print( fruits )

6 Ruby[ | ]

fruits = ["Apple", "Banana", "Orange", "Mango"]
shuffled = fruits.sort{ rand }
puts shuffled

7 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}