按完全二叉树的层次顺序依次输入结点信息建立二叉链表的suanfa

bintnode createbintree(bintree bt) {
    bintnode* Q[100];
    bintnode* s;
    int front, rear; 
    char ch;
    ch = getchar(); bt = NULL;
    front = 1;
    rear = 0;
    while (ch != '#') {
        s = NULL;
        if (ch != '@') {
            s = (bintnode*)malloc(sizeof(bintnode));
            s->data = ch;
            s->lchild = s->rchild = NULL;
        }
        rear++;
        Q[rear] = s;
        if (rear == 1)
            bt = s;
        else {
            if (s != NULL && Q[front] != NULL)
                if (rear % 2 == 0)
                    Q[front]->lchild = s;
                else
                    Q[front]->rchild = s;
            if (rear % 2 != 0)
                front++;
        }
        ch = getchar();
    }
    return bt;
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容