QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码
楼主: cuibaowenown2

[技术交流] 对于二叉树的所有性质的简便记忆,你还在死记硬背?你OUT了

  [复制链接]
最佳答案
0 
累计签到:37 天
连续签到:1 天
发表于 2014-4-20 10:31:23 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:639 天
连续签到:1 天
发表于 2014-4-20 10:44:41 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:313 天
连续签到:1 天
发表于 2014-4-20 10:48:22 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:25 天
连续签到:1 天
发表于 2014-4-20 10:59:41 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:190 天
连续签到:1 天
发表于 2014-4-20 11:14:17 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:46 天
连续签到:1 天
发表于 2014-4-20 11:15:26 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 

尚未签到

发表于 2014-4-20 11:44:51 | 显示全部楼层
看看                                   看看                                   看看                                   
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:187 天
连续签到:1 天
发表于 2014-4-20 13:09:21 | 显示全部楼层
。。。。。。。。。。。。。。
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:25 天
连续签到:0 天
发表于 2014-4-20 14:58:21 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:174 天
连续签到:1 天
发表于 2014-4-20 19:27:57 | 显示全部楼层
// 1.cpp : 定义控制台应用程序的入口点。
//

#include <stdio.h>
#include <stdlib.h>
struct tagNode
{
        float coef;
        int exp;
        struct tagNode *next;
};

typedef struct tagNode Node;
typedef struct tagNode* pNode;
typedef struct tagNode* List;

List Create();
void  Print( List L );
void add_poly(Node *pa,Node *pb);


int main()
{
        List pa = Create();
        List pb = Create();
        add_poly( pa, pb );
        Print( pa );
        getchar();
        return 0;

}

List Create()
{
        List New = ( List )malloc( sizeof( Node ) );
        List P, Q;
        New -> next = NULL;
        int n;
        printf( "输入项数\n" );
        Q = New;
        scanf( "%d", &n );
        for( int  i = 0; i < n ; i++ )
        {
                P = ( pNode )malloc ( sizeof( Node ) );
        P -> next = NULL;
                scanf( "%f%d" , &( P -> coef ), &( P -> exp ) );
        Q -> next = P;
        Q = P;
    }
        return New;
}

void Print( List L )
{
    pNode P = L -> next;
        while( P -> next != NULL)
    {
                printf( "%.2fx^%d+", P ->coef, P ->exp);
        P = P-> next;
    }
        printf( "%.2fx^%d", P ->coef, P ->exp);
    printf( "\n" );
}

void add_poly(Node *pa,Node *pb)
{
        Node *p = pa -> next;//链表1,将来的结果也放在此
        Node *q = pb -> next;//链表2
        Node *pre=pa;
        Node *u;//临时用
        float x;

        while ( p != NULL && q != NULL )//当两个链表都不为空
        {
                if (p -> exp < q -> exp )//比较链表1跟链表2当前节点的指数大小,链表1也是存放结果的地方
                {
                        pre = p;
                        p = p -> next;//p指向要比较的下一个结点。pre指向的是结果链表的最后一个结点。
                }
                else if ( p -> exp == q -> exp )//假如链表1和链表2的指数相等,就要系数相加
                {
                        x = p -> coef + q -> coef;
                        if ( x!=0 )//相加后的系数不为0,有必要保留一个结点就可以了
                        {
                                p -> coef = x;
                                pre = p;
                        }
                        else//如果相加后,系数是0,不需要保留任何一个结点,在这里删除链表1的结点,下面删除链表2的结点
                        {
                                pre -> next = p -> next;//保持链表1的连续性
                                free( p );
                        }
                        p = pre -> next;//p指向要比较的下一个结点
                        //下面的代码是进行链表2结点的删除工作,因为指数相等,仅仅需要保留一个结点就可以了
                        //而结果直接保存在链表1中,所以,删除链表2的结点。
                        u = q;
                        q = q -> next;
                        free( u );
                }
                else//如果链表2的当前节点指数小,那么要把链表2的当前节点加入到结果链表中(即是链表1)
                {//相当于把结点插入到链表1中,用u作为临时变量,保存链表2的下一个当前节点的位置。
                        u = q -> next;
                        q -> next = p;
                        pre -> next = q;
                        pre = q;
                        q = u;
                }

        }
        if ( q )//如果链表2比链表1长,那么需要把链表2多余的部分加入结果链表中。链表1比链表2长,则什么都不用做。
        {
                        pre -> next = q;
        }
        free( pb );
}
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 

尚未签到

发表于 2014-4-27 12:20:30 | 显示全部楼层
真的假的。。。。。。。。
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:8 天
连续签到:0 天
发表于 2014-4-30 13:33:13 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:19 天
连续签到:1 天
发表于 2014-4-30 13:46:26 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:1226 天
连续签到:46 天
发表于 2014-4-30 14:24:13 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:66 天
连续签到:1 天
发表于 2014-4-30 15:15:11 | 显示全部楼层
对于二叉树的所有性质的简便记忆,你还在死记硬背?你OUT了
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:14 天
连续签到:1 天
发表于 2014-5-4 10:30:00 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:20 天
连续签到:1 天
发表于 2014-5-4 12:44:31 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:8 天
连续签到:0 天
发表于 2014-5-4 13:19:59 | 显示全部楼层

RE: 对于二叉树的所有性质的简便记忆,你还在死记硬背?你OUT了

看一下...
感谢楼主
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:249 天
连续签到:0 天
发表于 2014-5-4 18:46:53 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:392 天
连续签到:1 天
发表于 2014-5-4 19:16:44 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /3 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.1 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2017-11-18 03:15

快速回复 返回顶部 返回列表