本篇文章主要介绍了"双向链表 数字按降序排列",主要涉及到方面的内容,对于C/C++jrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播感兴趣的同学可以参考一下:
#include #include typedef struct Tag_Node{struct ...
#include
#include
typedef struct Tag_Node{
struct Tag_Node *left;
struct Tag_Node *right;
int value;
}TNode;
TNode *root = NULL;
void append(int value){
TNode *NewNode = (TNode *) malloc(sizeof(TNode));
NewNode -> value = value;
NewNode -> left = NULL;
NewNode -> right = NULL;
if (NULL == root){
root = NewNode;
return;
}
else{
TNode *temp = root;
while((value >= temp -> value && temp -> left != NULL) || (value < temp -> value && temp -> right != NULL)){
while(value >= temp ->value && temp -> left!= NULL){
temp = temp -> left;
}
while (value < temp -> value && temp -> right != NULL )
temp = temp -> right;
}
if (value >= temp -> value){
temp -> left = NewNode;
NewNode -> right = temp;
}else{
temp -> right = NewNode;
NewNode -> left = temp;
}
return ;
}
}
void print(){
TNode *sidenode = root;
if (NULL == root){
printf("there is no value!\n");
return ;
}
if (root -> left != NULL){
sidenode = root -> left;
}else{
sidenode = root;
}
while(1){
if (sidenode -> left == NULL)
break;
sidenode = sidenode -> left;
}
while(sidenode != NULL){
printf("%d ", sidenode -> value);
sidenode = sidenode -> right;
}
printf("\n");
return ;
}
int main(){
append(43);
append(34);
append(17);
print();
return 0;
}
以上就介绍了双向链表 数字按降序排列,包括了方面的内容,希望对C/C++jrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播有兴趣的朋友有所帮助。
本文网址链接:http://www.codes51.com/article/detail_116640.html