Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah cara saya mengisih sekeping integer dalam susunan terbalik dalam Go?

Bagaimanakah cara saya mengisih sekeping integer dalam susunan terbalik dalam Go?

Patricia Arquette
Patricia Arquetteasal
2024-11-18 07:43:02615semak imbas

How do I sort a slice of integers in reverse order in Go?

Isih Sepotong Integer dalam Susunan Songsang dalam Go

Dalam Go, mengisih sepotong integer dalam tertib menaik adalah mudah menggunakan isihan .Fungsi Ints. Walau bagaimanapun, jika anda perlu mengisih dalam susunan terbalik, prosesnya boleh mengelirukan.

Untuk memahami isu ini, mari kita pecahkannya kepada langkah:

  1. Isih hirisan dalam tertib menaik menggunakan isihan.Ints:
example := []int{1, 25, 3, 5, 4}
sort.Ints(example) // [1, 3, 4, 5, 25]
  1. Cuba untuk membalikkan isihan menggunakan yang berikut kod:
sort.Sort(sort.Reverse(sort.Ints(keys)))

Walau bagaimanapun, pendekatan ini mengakibatkan ralat kerana sort.Ints ialah fungsi yang mengisih kepingan di tempatnya dan ia tidak mengembalikan kepingan.

Penyelesaian adalah dengan menggunakan jenis.IntSlice jenis, yang melaksanakan jenis.Antara muka antara muka untuk hirisan integer. Ini membolehkan kami mengisih hirisan menggunakan kaedah Songsang:

keys := []int{3, 2, 8, 1}
sort.Sort(sort.Reverse(sort.IntSlice(keys)))
fmt.Println(keys) // [8, 3, 2, 1]

Dalam contoh ini, kekunci diisih dari tertinggi ke terendah menggunakan isihan. Kaedah songsang.

Atas ialah kandungan terperinci Bagaimanakah cara saya mengisih sekeping integer dalam susunan terbalik dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn