>  기사  >  백엔드 개발  >  Go 해시 테이블에서 복합 키를 표현하고 사용하는 방법은 무엇입니까?

Go 해시 테이블에서 복합 키를 표현하고 사용하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-11 00:46:02603검색

How to Represent and Use Composite Keys in Go Hash Tables?

Go에서 해시 테이블용 복합 키 생성

Go에서 해시 테이블은 고유한 데이터를 기반으로 데이터를 효율적으로 저장하고 검색하는 데 유용한 데이터 구조입니다. 열쇠. 그러나 결합하여 복합 키를 형성하는 여러 값을 처리할 때 해시 테이블 내에서 이 키를 표현하고 사용하는 방법을 결정하는 것이 어려울 수 있습니다.

복합 키 표현

복합 키를 표현하기 위한 효과적인 접근 방식 중 하나는 '키' 구조체로 알려진 사용자 정의 데이터 구조를 정의하는 것입니다. 이 구조체는 키를 구성하는 개별 값을 캡슐화합니다.

type Key struct {
    X, Y int
}

구조체를 사용하면 여러 값을 단일 키로 결합할 수 있으므로 해시 테이블 내의 다양한 키를 쉽게 비교하고 식별할 수 있습니다.

사용자 정의 키 유형 사용

사용자 정의 Key 구조체가 정의되면 다음 키 유형을 사용하여 해시 테이블을 생성할 수 있습니다.

m := map[Key]int{}

이 해시 테이블은 Key 구조체를 키 유형으로 사용하고 각 키와 관련된 정수 값을 저장합니다.

사용 예

다음의 계산된 값을 저장하는 예를 살펴보겠습니다. 해시 테이블의 pow(x, y). 여기서 x와 y는 정수입니다. Key 구조체를 사용하여 각 쌍(x, y)에 대한 키를 생성할 수 있습니다.

m := map[Key]int{}
m[Key{2, 2}] = 4
m[Key{2, 3}] = 8

이제 특정 쌍에 대한 값을 검색하려면 동일한 Key 구조체를 사용하면 됩니다.

fmt.Println("2^2 = ", m[Key{2, 2}])
fmt.Println("2^3 = ", m[Key{2, 3}])

이 접근 방식은 해시 테이블의 복합 키를 사용하여 데이터를 저장하고 검색하는 유연하고 효율적인 방법을 제공합니다.

위 내용은 Go 해시 테이블에서 복합 키를 표현하고 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.