array
-
golang: 배열, 슬라이스, 맵Back-End/Golang 2024. 10. 27. 10:13
1. 배열 (Arrays)정적 크기: 배열은 생성 시 크기가 고정되며, 한 번 설정하면 변경할 수 없습니다.동일 타입 요소: 모든 요소는 같은 타입이어야 합니다.메모리 연속성: 배열은 메모리에 연속적으로 저장되므로 특정 인덱스에 빠르게 접근할 수 있습니다.var arr [5]int // 길이가 5인 int 배열, 모든 요소는 0으로 초기화arr[0] = 1 // 배열의 첫 번째 요소에 값 할당arr2 := [3]string{"Go", "is", "fun"} // 리터럴을 사용해 초기화 가능for i, v := range arr2 { fmt.Printf("index: %d, value: %s\n", i, v)} 실전 예시pa..
-
golang: Array vs LinkedListAlgorithm & Data Structure/DataStructure 2024. 7. 31. 13:51
Go 언어에서의 Array vs LinkedListGo 언어에서 배열과 링크드 리스트의 차이점을 살펴보고, 각각의 장단점을 예시와 함께 설명하겠습니다.배열 (Array)배열은 고정된 크기를 가진 연속된 메모리 블럭입니다. 배열을 선언할 때 크기를 지정해야 하며, 이후에는 크기를 변경할 수 없습니다.package mainimport "fmt"func main() { var arr [100]int arr[33] = 100 fmt.Println(arr[33]) // 출력: 100}장점Random Access에 강함: 배열은 연속된 메모리 블럭이기 때문에 인덱스를 통해 빠르게 접근할 수 있습니다. O(1)의 시간 복잡도를 가집니다.Cache Miss가 적음: 연속된 메모리 블럭이므로 캐시 히트율..
-
golang: 배열(Array)과 슬라이스(Slice)Back-End/Golang 2024. 5. 11. 13:10
I. 정의 및 기본 개념배열(Array): 배열은 Go에서 고정된 크기의 연속적인 메모리 영역에 동일한 타입의 요소들을 순차적으로 저장하는 데이터 구조입니다. 배열의 길이는 선언 시에 정해지며, 이후에는 변경할 수 없습니다. 배열 초기화 방법1. 기본 초기화: 배열을 선언하고, Go의 기본값으로 초기화됩니다. 숫자 타입의 배열은 0, 불리언 배열은 false, 포인터와 슬라이스, 맵, 채널은 nil로 초기화됩니다.var arr1 [3]int 2. 리터럴을 사용한 초기화: 배열 선언과 동시에 특정 값으로 초기화합니다.arr2 := [3]int{10, 20, 30} 3. 인덱스 지정 초기화: 특정 인덱스에 값을 할당합니다. 할당되지 않은 인덱스는 타입의 기본값으로 초기화됩니다.arr3 := [5]int{1:..