"빗질정렬 구현"의 두 판 사이의 차이

(새 문서: 분류:빗질정렬 ==Python== 분류: Python {{참고|Python 빗질정렬 구현}} <source lang='python'> def comb_sort(a): gap=size=len(a) swapped = True while g...)
 
1번째 줄: 1번째 줄:
[[분류:빗질정렬]]
[[분류:빗질정렬]]
==Perl==
[[분류:Perl]]
<source lang='perl'>
@arr = (9,1,22,4,0,-1,1,22,100,10);
$gap=$size=@arr;
$swapped=1;
while ($gap ne 1 || $swapped) {
        $gap = int(($gap*10)/13);
        $gap = 1 if ($gap<1);
        $swapped = 0;
        for $i (0..$size-$gap) {
                if ($arr[$i]>$arr[$i+$gap]) {
                        ($arr[$i], $arr[$i+$gap]) = ($arr[$i+$gap], $arr[$i]);
                        $swapped=1;
                }
        }
}
print join(',', grep /\S/, @arr);
#-1,0,1,1,4,9,10,22,22,100
</source>
==Python==
==Python==
[[분류: Python]]
[[분류: Python]]

2018년 8월 28일 (화) 09:30 판

1 Perl

@arr = (9,1,22,4,0,-1,1,22,100,10);
$gap=$size=@arr;
$swapped=1;
while ($gap ne 1 || $swapped) {
        $gap = int(($gap*10)/13);
        $gap = 1 if ($gap<1);
        $swapped = 0;
        for $i (0..$size-$gap) {
                if ($arr[$i]>$arr[$i+$gap]) {
                        ($arr[$i], $arr[$i+$gap]) = ($arr[$i+$gap], $arr[$i]);
                        $swapped=1;
                }
        }
}
print join(',', grep /\S/, @arr);
#-1,0,1,1,4,9,10,22,22,100

2 Python

def comb_sort(a):
    gap=size=len(a)
    swapped = True
    while gap !=1 or swapped:
        gap = (gap*10)//13
        if gap<1: gap=1
        swapped = False
        for i in range(0, size-gap):
            if a[i]>a[i+gap]:
                a[i],a[i+gap] = a[i+gap],a[i]
                swapped = True
arr = [9,1,22,4,0,-1,1,22,100,10]
comb_sort(arr)
print( arr )
# [-1, 0, 1, 1, 4, 9, 10, 22, 22, 100]

3 같이 보기

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