본문 바로가기

링크드리스트3

C++ - 쉽게 설명한 링크드리스트(Linked list) 이야기 링크드리스트(연결리스트) 종결자가 되어봅시다. 저는 어찌어찌나 봐도 한 개도 이해가 안가던지 '딴 애들은 이걸 어떻게 이해하는 것인가, 나는 과연 이 진로를 계속 가야하나' 진지하게 고민했던 기억이 있답니다 우리가 배열로 리스트를 하나 만든다고 가정해 봅니다. 그것을 관리하기 위한 함수로 대략 이러한 코드가 하나 들어가게 될 것 입니다. void ArrayList::insertFirstNode(int data) //첫번째 노드에 데이터를 넣어주고 나머지는 한칸씩 밀려나가는 함수{if(!is_full()) //어딘가에 이런것도 하나 구현해 두겠죠. 배열이 다 찼다면 애당초 작업하지 않도록{for(int i=length-1; i>=0; i--) list[i+1] = list[i]; //자료가 지워지지 않도록.. 2012. 5. 30.
C - 알고리즘 - 더블링크드리스트(상) 링크드리스트에는 현재위치를 뿅! 뛰어넘는 부분이 있답니다.(start=start->next) 이런 부분이 오기 전에 포인터에 잠시 이전주소를 저장시켰다가 뿅 넘고 나서는 저장 시켜뒀던 이전 주소를 새로 만들어진 구조체에 연결 시켜줍니다. 언제든 돌아 갈 수 있도록 말이예요~ㅎ #include #include #include typedef struct linked_list { int data; linked_list *prev; linked_list *next; //새로나온 아이 (구조체 머리) }link; int main(void) { int data_box[]={5,6,4,7,3,8,2,9,1,0,10}; int length=sizeof data_box/ sizeof data_box[0]; int num.. 2010. 6. 1.
C - 싱글링크드리스트(문자열) 차 한잔 마시러 놀러왔다가 대충 만들어 주고 가신 희승씨의 링크드리스트 기본개념은 대략 이러합니다. #include #include //동적메모리할당 #include //getch(hidden, 동기식) #include //dos명령어사용 //구조체 typedef struct linkedlist { char data; struct linkedlist *next; }link; int main(void) { int txt_length=1; char input_str; link *front;//기준 link *start;//진도 link *temp;//방잡이 temp=(linkedlist*)malloc(sizeof(linkedlist)); start=(linkedlist*)malloc(sizeof(linked.. 2010. 5. 13.