초기 데이터 구 조 를 배 운 학생 에 게 보 내 는 것 (순환 더 블 링크 기본 작업, 생 성, 삽입, 삭제, 정렬)
NODE * Doublelinklist()
{
NODE *head = NULL;
return head;
}
2. 노드 삽입:
NODE *myinsert(NODE *head,NodeData Data)
{
NODE *last = head;
if(head == NULL)
{
head = (NODE *)malloc(sizeof(NODE));
head->data = Data;
head->next = head;
head->pione = head;
}
else
{
NODE *newnode = (NODE *)malloc(sizeof(NODE));
newnode->data = Data;
while(last->next != head)
{
last = last->next;
}
last->next = newnode;
newnode->pione = last;
newnode->next = head;
head->pione = newnode;
}
return head;
}
3. 노드 삭제:
NODE *myremove(NODE *head,int data)
{
NODE *q = head;
if(head == NULL)
{
printf(" ! !
");
return head;
}
else
{
if(head->next == head)
{
if(head->data == data)
{
free(head);
head = NULL;
return head;
}
else
{
printf(" !
");
return head;
}
}
else
{
if(head->data == data)
{
NODE *pre = head->pione;
NODE *ne = head->next;
head = head->next;
pre->next = head;
free(q);
q = NULL;
return head;
}
else
{
while((q->data != data) && (q->next != head))
{
q = q->next;
}
if(q->data == data)
{
NODE *pre = q->pione;
NODE *ne = q->next;
pre->next = ne;
ne->pione = pre;
free(q);
q = NULL;
return head;
}
else
{
printf(" !
");
return head;
}
}
}
}
}
4. 정렬: 저 는 거품 정렬 을 사용 하고 정렬 을 직접 삽입 할 수 있 습 니 다. 정렬 을 삽입 하고 빠 른 정렬 을 선택 할 수 있 습 니 다.
정렬 을 직접 삽입 하면 쉽게 이 루어 지고 정렬 을 빨리 삽입 하 는 기준 이 약간 아프다.
NODE *mysort(NODE *head)
{
NODE *p = head;
NODE *max = head;
NODE *ne = NULL;
NODE *pre = NULL;
int len = Doublelinklistlen(head);
int i = len - 1;
int j = len - 1;
if((head == NULL) && (head->next == head))
{
return head;
}
else
{
while(i--)
{
p = head;
while(p->next != head)
{
if(p->next->data > p->data)
{
if(p == head)
{
head = p->next;
}
ne = p->next;
pre = p->pione;
p->next = p->next->next;
p->next->pione = p;
ne->next = p;
p->pione = ne;
ne->pione = pre;
pre->next = ne;
}
else
{
p = p->next;
}
}
}
}
return head;
}
실천 을 통 해 참된 지식 을 얻 고, 먼저 직접 써 보고, 쓰 지 못 하면 다른 사람의 것 을 본다.아니면 먼저 잘 보고 직접 써 보 세 요.가장 좋 은 것 은 보면 서 쓰 지 않 는 것 입 니 다 ~ ~ ~ ~ ~ ~ 아래 에 저 는 다른 데이터 구조의 지식 을 계속 업데이트 할 것 입 니 다. 저 는 개인 적 으로 데이터 구 조 를 배우 고 그림 을 많이 그리고 데이터 구조의 기본 적 인 조작 을 알 아야 한다 고 생각 합 니 다. 단일 체인 표 는 너무 간단 합 니 다. 저 는 단일 체인 표 의 전환 만 말 할 것 입 니 다.
그리고 스 택 과 대기 열, 트 리 (이 진 트 리 위주), 정렬 등등 ~ ~ ~ ~ ~ 관심 있 는 친구 들 이 관심 가 져 주 셨 으 면 좋 겠 습 니 다 ~ ~ ~ ~ ~ ~ ~ ~ ~
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.