Be concise.
Be useful.
All contributions dictatorially edited by webmasters to match personal tastes.
Please do not paste any copyright violating material.
Please try to avoid dependencies to third-party libraries and frameworks.
- Ada
- C
- Caml
- Clojure
- C++
- C#
- D
- D
- Dart
- Elixir
- Erlang
- Fortran
- Go
- Go
- Go
- Groovy
- Haskell
- JS
- Java
- Java
- Java
- Java
- Java
- Kotlin
- Kotlin
- Kotlin
- Lisp
- Lua
- Lua
- Lua
- Obj-C
- PHP
- Pascal
- Pascal
- Perl
- Prolog
- Python
- Python
- Python
- Ruby
- Rust
- Rust
- Scala
- Scheme
- Smalltalk
- VB
int *p1 = x;
int *p2 = x + N-1;
while (p1 < p2)
{
int temp = *p1;
*(p1++) = *p2;
*(p2--) = temp;
}
Reverses an array of N ints, in-place.
List.rev x
(reverse x)
lists:reverse(List)
a = a(ubound(a,dim=1)::-1)
func reverse[T any](x []T) {
for i, j := 0, len(x)-1; i < j; i, j = i+1, j-1 {
x[i], x[j] = x[j], x[i]
}
}
This generic function works for any type parameter T.
It operates in-place.
It operates in-place.
reverse x
x = x.reverse();
note that Array.prototype.reverse() not only returns the reversed array, it works in place!
int i, m = x.size(), n = m-- / 2;
for (i = 0; i < n; ++i) swap(x, i, m - i);
static <T> void reverse(List<T> x){
int n = x.size();
for(int i=0;i<n/2;i++){
T tmp = x.get(i);
x.set(i, x.get(n-i-1));
x.set(n-i-1, tmp);
}
}
This method works for lists of any element type T .
In case of an odd number of elements, the central element doesn't need to be swapped.
In case of an odd number of elements, the central element doesn't need to be swapped.
x.reverse()
MutableLists or Arrays can be reversed in place.
val reversedView = x.asReversed()
Returns a reversed read-only view of the original List. All changes made in the original list will be reflected in the reversed one.
(reverse x)
This preserves the value of x.
rev = {}
for i=#x, 1, -1 do
rev[#rev+1] = x[i]
end
-- in-situ reversal
function reverse(t)
local n = #t
local i = 1
for i = 1, n do
t[i],t[n] = t[n],t[i]
n = n - 1
end
end
function array_reverse(x)
local n, m = #x, #x/2
for i=1, m do
x[i], x[n-i+1] = x[n-i+1], x[i]
end
return x
end
rev = {}
for i=#x, 1, -1 do
rev[#rev+1] = x[i]
end
x = rev
$x = array_reverse($x, true);
array_reverse creates a new array.
var n,i: integer;
[...]
n:= length(x);
setlength(x, n+1);
for i := 0 to (n div 2)-1 do
begin
x[n] := x[i];
x[i] := x[n-i-1];
x[n-i-1] := x[n];
end;
setlength(x, n);
The reversing is done "in Place"
except one extra element, so it works with any element-type.
except one extra element, so it works with any element-type.
var n,i: integer;
tmp:TElement;
[...]
n:= length(x);
for i := 0 to (n div 2)-1 do
begin
tmp := x[i];
x[i] := x[n-i-1];
x[n-i-1] := tmp;
end;
alternative implementation, if the type of the elements is known.
my @list = ('words', 'of', 'list', 'a', 'reverse');
my @reversed = reverse @list;
reverse is a built-in function. Given an array, it will reverse it. Given a string, it will return a string with the letters reversed.
x.reverse()
Reverses list in place
y = x[::-1]
Creates a new, reversed list.
x.reverse!
Reverses self in place.
(reverse x)
X reversed.
Dim ItemList As New List(Of String)(New String() {"one", "two", "three"})
ItemList.Reverse()
For Each item In ItemList
Console.WriteLine(item)
Next