나는 완전한 위치 기반 알고리즘을 가지고 있습니다. 즉, 알고리즘 출력은 곡선 위치를 기반으로하며 각 결과는 이전 결과 값의 영향을받습니다.C++ map 질문
각 시간을 다시 계산하지 않으려면 주어진 샘플 속도로 사전 계산하고이어서 룩업을 수행하고 사전 계산 된 결과를 반환하거나 (내가 직접 착륙 한 경우) 또는 인접한 두 인접 사이를 보간합니다. 결과.
이것은 F #이나 C#에서 제게는 사소한 것이지만 C++은 매우 녹슬 었으며 (심지어 그렇게 좋지도 않았습니다).
사용할 올바른 구조를 매핑하고 있습니까? 그리고 당신이 나에게 조회를 수행하는 방법의 예를 보여줄만큼 친절 할 수 있습니까? (나는 키가 int가 될 수 있음을 의미하는 milimetres로 미리 계산할 생각입니다. 값은 double이 될 것입니다).
업데이트 좋아, 아마도 내가 원하는 정렬 된 사전입니다.
아래 답변에 대한 높은지지를 얻었음에도 불구하고 문제에 대한 충분한 정보를 제공 한 것으로 확신하지는 않습니다. 메모 화 문제 나 문자열 색인 문제를 설명하고 있는지 잘 모르겠습니다. 전체 상황 (예 : 웨이브 폼 만들기)이 필요한 경우 문제는 '지도 사용'이 아닌 것입니다. 문제는 전체 문자열을 효율적으로 저장하고 검색 할 수있는 방법을 찾고 가치를 저장하는 것이 도움이되지 않는다는 것입니다. 기본적으로 더 많은 정보가 필요합니다. 다른 사람이 있는지 몰라. –
지금 접미어 트리를 검사하여 이것이 필요한 것에 더 가까운 지 확인하는 것이 좋습니다. –
San Jacinto와 동의하십시오. 도움이 될 수있는 것 중 하나는 C#에서 솔루션이 무엇인지 확신 할 수 있다면 (C#이 F #보다 C++에 훨씬 더 가깝습니다), 어떻게 구현할 것입니까? 주어진 포인트에 대한 솔루션을 가지고 있는지 판단하기 위해 (2D에서) 트리를 반복 할 것인가? 보간에 사용할 가장 가까운 2 개의 사전 계산 된 점을 찾으십니까? 지도는 직접 검색에 매우 적합하지만 한 차원 만 검색합니다 (정렬 알고리즘이 무엇이든간에) –