关于把二元查找树转变成排序的双向链表(树)的C语言设计程序执行后出现段错误的问题
来源:互联网 发布:淘宝 云客服 工资 编辑:程序博客网 时间:2024/04/30 12:04
程序正确运行后出现如写错误:
Single stepping until exit from function __libc_start_main,
which has no line number information.
Program received signal SIGSEGV, Segmentation fault.
源代码为:
#include <stdio.h>
#include <stdlib.h>
// translate BST to doublelist
typedef struct BSTTreeNode
{
int value;
struct BSTTreeNode *left;
struct BSTTreeNode *right;
}DoubleList;
//typedef BSTTreeNode DoubleList;
DoubleList * pHead;
DoubleList * pListIndex;
struct BSTTreeNode * BST_add_node(struct BSTTreeNode ** root, int value)
{
if (*root == NULL)
{
*root = (struct BSTTreeNode *) malloc(sizeof(struct BSTTreeNode));
(*root)->value = value;
(*root)->left = NULL;
(*root)->right = NULL;
return *root;
}
if ((*root)->value > value)
return BST_add_node( &(*root)->left, value);
else if((*root)->value < value)
return BST_add_node( &(*root)->right, value);
else
printf("the %d node has existed,not instert", value);
return NULL;
}
void convert_list (struct BSTTreeNode *root)
{
if (root == NULL) return ;
root->left = pListIndex;
if (pListIndex != NULL)
pListIndex->right = root;
else
pHead = root;
pListIndex = root;
printf("value is %d/n", root->value);
}
void BST_inorder(struct BSTTreeNode *root)
{
if (root == NULL)
return ;
if (root->left != NULL)
BST_inorder( root->left );
convert_list( root);
if (root->right != NULL)
BST_inorder( root->right );
}
int main(int argc, char *argv[])
{
struct BSTTreeNode **pRoot ;
*pRoot = NULL;
pHead = NULL;
pListIndex = NULL;
BST_add_node(pRoot, 10);
BST_add_node(pRoot, 3);
BST_add_node(pRoot, 6);
BST_add_node(pRoot, 18);
BST_add_node(pRoot,2);
BST_add_node(pRoot, 32);
BST_add_node(pRoot, 5);
BST_inorder(*pRoot);
return 0;
}
- 关于把二元查找树转变成排序的双向链表(树)的C语言设计程序执行后出现段错误的问题
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- .把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- 把二元查找树转变成排序的双向链表
- VC6.0在Release版本下如何调试——转载
- TCP状态迁移,CLOSE_WAIT & FIN_WAIT2 的问题
- lucene Version parameter
- AVR开发之一:WinAVR+AVR Studio 新手入门必读
- linux 下 mysql下保存进去数据为乱码的解决办法(centos5.x)
- 关于把二元查找树转变成排序的双向链表(树)的C语言设计程序执行后出现段错误的问题
- MTK idle界面涉及的函数
- tile布局的ButtonBar
- 正则基础之——捕获组
- 中兴V880自带收音机没有外放功能
- 学期结束时
- 利用Python写的二分法查找算法及测试
- [Nosql]MongoDb+Spring [undone]java.lang.NoClassDefFoundError: org/springframework/data/mapping/context/MappingContextAware
- 存储过程中使用事务