데이터 구조 - 11 질서 있 는 양 방향 링크 에 노드 삽입
2817 단어 데이터 구조
양 방향 링크 - 질서 있 는 양 방향 링크 에 노드 삽입
#include
using namespace std;
struct node //node , node , / node
{
int x;
node *left; // ,
node *right;
};
node* create(int n) // , n , node*
{
if(n<1) // ,
{
cout<x=rand()%100;
p->right=temp; // p right temp,
temp->left=p; //temp left p, left
p=temp; // p temp, p
}
p->right=NULL; // ,p->right , right null
head->right->left=NULL; // , left null
return head;
}
void display(node *head) //
{
node *p;
p=head->right; //p , for
if(p==NULL)
cout<x<right;
}
cout<right; //p , for
int temp; //
while(p) //
{
s=p->right; // p
while(s)
{
if(p->x > s->x) // x,
{
temp=p->x;
p->x=s->x;
s->x=temp;
}
s=s->right; //
}
p=p->right; //
}
}
void insert(node *head, int n) // n head
{
node *p,*s;
p=head; //p , for
while(p->right)
{
if(p->right->x > n) // n ,
{
node *temp=new node;
temp->x=n;
s=p->right; // node s
temp->right=p->right;
p->right=temp; // ,
s->left=temp; //
temp->left=p;
break;
}
p=p->right;
}
if(p->right==NULL) // n ,
{
node *temp=new node;
temp->x=n;
p->right=temp; //
temp->right=NULL; //right null
temp->left=p; //
}
}
void insert1(node *head, int n) // , ,
{
node *s,*p=head; //p , for
node *t=new node;
t->x=n;
s=p->right; // node s
t->right=p->right; // ,
p->right=t;
s->left=t; //
t->left=p;
sort(head); //
}
int main()
{
node *list;
list=create(10); //
display(list); // , ,
sort(list); // ,
display(list); //
insert(list,-2); //
display(list); //
insert1(list,99); //
display(list); //
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.