1
이 내 구조 선언연결된 목록의 다음 메모리를 가리키는 방법은 무엇입니까?
struct Package_Node
{
int bar_code;
float package_weight;
struct Package_Node *next;//_packaged;
};
struct Key_Node
{
int key;
struct Package_Node *next;//_package;
};
는이 그들에 어떤 임의의 항목을 추가하는 방법입니다
for(int i=0;i<N;i++)
{
barcodeTemp = rand() % max_value + 1;
keyTemp = barcodeTemp % X;
tempWeight = rand() % 500 + 1;
totalPackages[i].bar_code=barcodeTemp;
totalPackages[i].package_weight=tempWeight;
}
for(int i=0;i<N;i++)
{
cout << totalPackages[i].bar_code <<endl;
cout << totalPackages[i].package_weight << endl;
}
나는 외부 I 코드 내부에 무언가를 추가해야 할 것을 궁금해하고 있어요 연결된 목록을 만드는 구조 ?? 좀 더 명확히하기 위해 나는 bar_code와 package_weight의 무작위 값을 갖는 Package_node 구조체를 사용하여 5 개의 무작위 패키지를 만들었다. 나는 해시 테이블 메소드를 사용하여 key_node에서 패키지 정보를 저장할 위치를 결정합니다. key_node [1]에 두 개의 요소가 있고 세 번째 요소를 추가하려면 아무 것도 제거하지 않고 끝에 세 번째 요소를 추가하려면 어떻게해야합니까? 링크 목록이어야하며 끝은 항상 NULL을 가리켜 야합니다.
가의 중요성은 무엇입니까 "만약"문 그리고 [I-1] 다음 내용 대신 totalPackages [I] –
I의 totalPackages 이유 totalPackages는 고정 크기의 배열 또는 std :: vector라고 가정하고 if 문은 인덱스 -1에있는 벡터의 요소에 액세스하지 못하도록합니다. –
목록의 이전 요소가 다음 요소를 가리 키도록하려는 경우 이전 요소의 포인터를 현재 요소로 설정해야합니다. –