Go Program to Reverse an Array
Explanation
This program demonstrates how to reverse an array (or slice) in Go. We will use a simple algorithm that swaps elements from the beginning of the array with elements from the end of the array. The process continues until we reach the middle of the array.
Code
// This Go program reverses an array.
// It demonstrates the basic concept of swapping elements in an array.
package main
import (
"fmt"
)
// reverseArray function reverses the given array in place.
// It swaps elements from the beginning and end of the array until the middle is reached.
func reverseArray(array []int) {
start := 0 // Starting index
end := len(array) - 1 // Ending index
// Loop until start index is less than end index
for start < end {
// Swap the elements at start and end
array[start], array[end] = array[end], array[start]
// Move the start index forward and end index backward
start++
end--
}
}
// printArray function prints the elements of the given array.
func printArray(array []int) {
for _, value := range array {
fmt.Print(value, " ")
}
fmt.Println()
}
// Main function
func main() {
// Initialize the array
array := []int{1, 2, 3, 4, 5}
// Print the original array
fmt.Println("Original Array:")
printArray(array)
// Reverse the array
reverseArray(array)
// Print the reversed array
fmt.Println("Reversed Array:")
printArray(array)
}
Explanation of the Code
Function Definitions:
The reverseArray
function contains the logic to reverse the array in place by swapping elements from the start and end. The printArray
function is used to print the elements of the array in a readable format.
Main Function:
The main
function serves as the entry point of the program. It initializes an array, prints the original array, calls the reverseArray
function to reverse the array, and then prints the reversed array.
reverseArray Function:
The reverseArray
function takes an array as input and reverses it in place. It uses two pointers: start
(initialized to the beginning of the array) and end
(initialized to the end of the array). The elements at these positions are swapped, and the pointers are moved towards the center. This process continues until the start index is less than the end index.
printArray Function:
The printArray
function takes an array as input and prints its elements. This is used to display the array before and after reversing it.