내 링크에 맞춤 데이터가 필요합니다. stLINK는 링크 데이터를 나타내는 구조체라고 생각하십시오. 한 가지 방법은 구조체의 포인터를 행렬에 넣어 (int로 캐스팅이 필요함), 또 다른 방법은 링크 벡터를 만들고 행렬에 각 링크 항목의 인덱스를 넣는 것입니다. 표준 방법이 있으면 저를 도우십시오. 덕분에그래프 구현, 인접성 매트릭스 사용, 링크의 맞춤 데이터 포함
-1
A
답변
0
나는 그것이 당신이 각 가장자리에 대한 사용자 정의 데이터를 가지고 필요가 이해, 그렇지? 나는 이것을하기 위해 벡터와지도를 사용한다.
struct data_t {
// any data you want to store for an edge
int a,b,c;
string name;
};
std::vector< std::map<int, data_t> > adj;
이렇게하면 가장자리가 있는지 여부를 확인하는 것이 빠릅니다. 그렇지 않으면 그냥 사용할 수 있습니다 std::vector<data_t>
0
"사용자 정의 데이터"와 "링크"에 대한 설명이 없습니다. 나는 그들이 수업이라고 생각할 것이다. 뭔가 (여기서는 "링크")에 여러 유형의 데이터를 한 번에 전달해야하는 경우 클래스를 만들어야합니다. 물론, C++로 객체의 행렬을 만들 수 있습니다. int
으로 변환 할 필요가 없습니다. 당신의 "사용자 정의 데이터"는 "링크"수행하고 각 링크가 자신의 "사용자 정의 데이터"가로 전체 시간을 살 수 있다면
는 가장 쉬운 방법은 클래스 링크에 데이터를 추가하는 것입니다.
class Link { customData_t data; // other useful attributes (and methods) };
당신은 당신의 "사용자 정의 데이터"의
std::vector
을 만들 수 있습니다. 항목의 생성 및 삭제를 관리합니다. 무작위 요소에 접근하는 가장 빠른 방법은 포인터 인 메모리에서의 위치를 알아내는 것입니다. 나는 int 형으로 캐스트 할 필요가 없다.std::vector<customData_t> CustomData; class Link { customData_t* data; // other useful attributes (and methods) };
이data
필링 :Link l; customData_t temp; CustomData.push_back(temp); l.data = &(CustomData.back());
(또는 C++ 11
vector::emplace_back()
를 사용할 수 있습니다.)액세스가 용이하다 : 당신이 원하는 경우
*l.data
를이 방법은 더 나은 여러 개의 "링크"에 걸쳐 동일한 데이터를 공유하거나 "링크"의 수명 동안 추가/제거해야하는 경우.
관련 문제
- 1. 그래프. 반복을위한 인접성
- 2. matlab에서 인접성 매트릭스 필터링
- 3. 인접성 매트릭스 이웃 확장하기
- 4. 인접성 (adjacency) 매트릭스 자바에서 SQL
- 5. 인접성 매트릭스 만 주어진 선형 시간의 그래프 속성 확인
- 6. 무향 그래프 인접성 (컴퓨터 과학)
- 7. 그래프 메모리 구현
- 8. 네트워크 분석을 위해 데이터 프레임을 인접성 매트릭스/에지 목록으로 변환
- 9. WordPress 위젯 링크의 맞춤 데이터 속성
- 10. 우회 가중 그래프 구현
- 11. 링크의 양식 필드 데이터 사용?
- 12. C에서 그래프 데이터 구조 구현
- 13. 방법 인접성 매트릭스 CSV [파이썬] 짧은 경로 측지선 거리를 계산?
- 14. 그래프 코스트 매트릭스
- 15. igraph의 매트릭스 마켓 그래프
- 16. 자바 인접리스트 가중치가 적용된 가장자리가있는 그래프 구현
- 17. 인접 목록 구현 그래프
- 18. Webgl에서 퍼스펙티브 매트릭스 구현
- 19. 데이터 모델, 그래프 라이브러리, C++
- 20. 구현 "구현하셨습니까?" 핵심 데이터 포함
- 21. 파이썬에서 링크 된 매트릭스 구현?
- 22. 맞춤 월별 그래프
- 23. 대용량 데이터 집합을위한 Python의 인접 매트릭스 만들기
- 24. 인접성 매트릭스 또는 목록을 사용하는 그래프의 최소 크기
- 25. BFS는 인접성 매트릭스 목록에서 어떻게 O (m + n)입니까?
- 26. Android의 맞춤 동적 그래프
- 27. 그래프 구현 및 인접 행렬의 초기화
- 28. 인접 목록 그래프 구현 c (모든 라이브러리)
- 29. 맞춤 데이터 유형 공유 구현 방법
- 30. Matlab에서 큰 매트릭스 사용