Sort an integer array: Difference between revisions
Content added Content deleted
(added JavaScript) |
No edit summary |
||
Line 125: | Line 125: | ||
sort($nums); |
sort($nums); |
||
?> |
?> |
||
==[[Ruby]]== |
|||
[[Category:Ruby]] |
|||
'''Interpreter:''' [[ruby]] 1.8.4 |
|||
[2,4,3,1,2].sort |
|||
==[[UNIX Shell]]== |
==[[UNIX Shell]]== |
Revision as of 19:48, 28 January 2007
Sort an integer array
You are encouraged to solve this task according to the task description, using any language you may know.
You are encouraged to solve this task according to the task description, using any language you may know.
Sort an array (or list) of integers in ascending numerical order. Use a sorting facility provided by the language/library if possible.
C
Compiler: GCC 4.0.1
#include <stdlib.h> int intcmp(const void *i1, const void *i2) { int l = *(int *)i1, r = *(int *)i2; return l >= r ? l > r ? 1 : 0 : -1; } int main() { int nums[5] = {2,4,3,1,2}; qsort(nums, 5, sizeof(int), intcmp); }
C++
Compiler: GCC 4.0.1
With a simple array:
#include <algorithm> int main() { int nums[] = {2,4,3,1,2}; std::sort(nums, nums+5); }
With a std::vector:
#include <algorithm> #include <vector> int main() { std::vector<int> nums; nums.push_back(2); nums.push_back(4); nums.push_back(3); nums.push_back(1); nums.push_back(2); std::sort(nums.begin(), nums.end()); }
With a std::list:
#include <list> int main() { std::list<int> nums; nums.push_back(2); nums.push_back(4); nums.push_back(3); nums.push_back(1); nums.push_back(2); nums.sort(); }
Haskell
Interpreter: GHCi 6.6
import List nums = [2,4,3,1,2] sorted = sort nums
Java
import java.util.Arrays; public class example { public static void main(String[] args) { int[] nums = {2,4,3,1,2}; Arrays.sort(nums); } }
JavaScript
Interpreter: Firefox 2.0
JavaScript sorts lexically by default, so "10000" comes before "2". To sort numerically, a custom comparator is used.
function numberSorter(a, b) { return a - b; } var numbers = [20, 7, 65, 10, 3, 0, 8, -60]; numbers.sort(numberSorter); alert( numbers );
Objective C
Compiler: GCC 4.0.1 (apple)
- (void)example { NSArray *nums, *sorted; nums = [NSArray arrayWithObjects: [NSNumber numberWithInt:2], [NSNumber numberWithInt:4], [NSNumber numberWithInt:3], [NSNumber numberWithInt:1], [NSNumber numberWithInt:2], nil]; sorted = [nums sortedArrayUsingSelector:@selector(compare:)]; }
Perl
Interpreter: perl 5.8.6
@nums = (2,4,3,1,2); @sorted = sort {$a <=> $b} @nums;
PHP
Interpreter: PHP 4.4.4 CLI
<?php $nums = array(2,4,3,1,2); sort($nums); ?>
Ruby
Interpreter: ruby 1.8.4
[2,4,3,1,2].sort
UNIX Shell
Interpreter: Bash 2.05b
nums=(2 4 3 1 2) sorted=($(for i in ${nums[*]}; do echo $i; done | sort -n))