Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static void sort(int a[], int lo0, int hi0) {
- int lo = lo0;
- int hi = hi0;
- if (lo >= hi) { return; }
- int mid = a[(lo + hi) / 2];
- while (lo < hi) {
- while (lo<hi && a[lo] < mid) { lo++; }
- while (lo<hi && a[hi] >= mid) { hi--; }
- if (lo < hi) {
- int T = a[lo];
- a[lo] = a[hi]; a[hi] = T;
- }
- }
- if (hi < lo) {
- int T = hi;
- hi = lo;
- lo = T;
- }
- sort(a, lo0, lo);
- sort(a, lo == lo0 ? lo+1 : lo, hi0);
- }
- when i print the first 100 of 10000 digits in a sorted array
- sorted 1 thru 100
- 44
- 3
- 5
- 0
- 0
- 0
- 2
- 2
- 5
- 3
- 3
- 17
- 6
- 6
- 6
- 8
- 12
- 14
- 20
- 21
- 22
- 22
- 23
- 23
- 24
- 24
- 26
- 27
- 27
- 30
- 31
- 35
- 35
- 38
- 37
- 36
- 37
- 39
- 39
- 40
- 41
- 43
- 44
- 42
- 43
- 45
- 46
- 47
- 50
- 49
- 49
- 48
- 48
- 49
- 51
- 52
- 52
- 53
- 57
- 56
- 56
- 60
- 60
- 58
- 58
- 62
- 62
- 64
- 64
- 64
- 64
- 65
- 65
- 66
- 68
- 71
- 70
- 72
- 73
- 73
- 76
- 74
- 77
- 84
- 85
- 81
- 88
- 88
- 90
- 90
- 89
- 89
- 91
- 94
- 95
- 94
- 96
- 96
- 98
- 110
- why is it whacky?
Add Comment
Please, Sign In to add comment