新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论高级C/C++编程、代码重构(Refactoring)、极限编程(XP)、泛型编程等话题
    [返回] 计算机科学论坛计算机技术与应用『 C/C++编程思想 』 → 恳请高手指教链表的问题 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 11874 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 恳请高手指教链表的问题 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     afly 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:2
      积分:61
      门派:XML.ORG.CN
      注册:2005/9/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给afly发送一个短消息 把afly加入好友 查看afly的个人资料 搜索afly在『 C/C++编程思想 』的所有贴子 引用回复这个贴子 回复这个贴子 查看afly的博客楼主
    发贴心情 恳请高手指教链表的问题

    如何将二维数组为数据结构的程序改写为以单向链表结构
    开头如下:

    struct LinkNode

    {
      int Row;            //存放二维数组的行号
      int Column;         //存放二维数组的列号
      int Data;           //存放二维数组对应行号及列号中的数
      LinkNode *Next;     //指向下一个结点的指针
    };

    用此单向链表结构来表示二维数组,不限二维数组的大小

    请各位高手详细的写一下创建结点,舔加结点的程序代码,麻烦了!


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/9/28 10:41:00
     
     蓝雪宇 美女呀,离线,快来找我吧!
      
      
      等级:大一(高数修炼中)
      文章:13
      积分:112
      门派:XML.ORG.CN
      注册:2005/5/1

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给蓝雪宇发送一个短消息 把蓝雪宇加入好友 查看蓝雪宇的个人资料 搜索蓝雪宇在『 C/C++编程思想 』的所有贴子 引用回复这个贴子 回复这个贴子 查看蓝雪宇的博客2
    发贴心情 
    struct LinkNode
    {
      int Row;                    /*存放二维数组的行号*/
      int Column;              /*存放二维数组的列号*/
      int Data;                   /*存放二维数组对应行号及列号中的数*/
      struct LinkNode *Next,;     /*指向下一个结点的指针*/
    };
    struct Nodeinfo
    {
       struct LinkNode *start,*nonce;  /*指向二维数组链表开始(当前)位置*/
       int Nrow,Ncolumn;                     /*二维数组总行数和列数*/
    }*info=NULL;

    int Linkinfo(int row,int column)
    {
       if(!info)
       {   info=(struct Nodeinfo *)calloc(1,sizeof(struct Nodeinfo));
           if(!info)
           { puts("Not enough memory!");getchar();exit(1);}
           info->start=info->nonce=NULL,info->Nrow=row,info->Ncolumn=column;
           return 1;}
       puts("LinkNode already exist!");getchar();
       return 0;
    }

    int addnode(int data)
    {
        struct LinkNode *temp=NULL;
        if(!info)
        { puts("Please create LinkNodeinfo!");getchar();return 0;}
        temp=(struct LinkNode *)calloc(1,sizeof(struct LinkNode));
        if(!temp)
        {puts("Not enough memory!");getchar();exit(1);}
        if(!info->nonce)
        {info->nonce=info->start=temp,temp->Row=temp->Cloumn=0,temp->Data=data;
          return 1;}
        if(info->nonce->Row<=info->Nrow-1)
        {
            if(info->nonce->Column==info->Ncolumn-1)
            {
                if(info->nonce->Row==info->Nrow-1)
                {puts("Already to max");getchar();return 0;}
                info->nonce->next=temp,temp->Nrow=info->nonce->Nrow+1;
                temp->Column=0,info->nonce=temp;return 1;
            }
             info->nonce->next=temp,temp->Nrow=info->nonce->Nrow;
             temp->Column=info->nonce->Column+1,info->nonce=temp;
             return 1;
        }
    }
    这是一种方法,还有其他的方法你自己可以研究先.

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/9/28 21:39:00
     
     afly 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:2
      积分:61
      门派:XML.ORG.CN
      注册:2005/9/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给afly发送一个短消息 把afly加入好友 查看afly的个人资料 搜索afly在『 C/C++编程思想 』的所有贴子 引用回复这个贴子 回复这个贴子 查看afly的博客3
    发贴心情 
    太感谢了,以后还请多多指教
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/9/29 14:31:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 C/C++编程思想 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/11/22 15:10:05

    本主题贴数3,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    62.500ms