毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

C++使用由结构形成的链表来存放数据

更新时间:2011-5-3:  来源:毕业论文

C++使用由结构形成的链表来存放数据
5.1需求分析: 使用由结构形成的链表来存放数据;总保障,在把第i个数据插入到链表以前,链表中当前已有的i-1个数据已经是有序的(i=1,2,…,即是说,每次总是在原有有序链表的适当位置插入新数据,而保障插入后的链表仍有序。注意i=1时,链表为“空”显然满足条件)。
 
5.2程序执行的结果:
 
5.3概要设计:


本程设计思路: 本题实现泛型的单链表模板,可以方便的对各种类型数据的插入,没加入一个数据,会线性搜索数据适当的插入位置,保证链表的有序性。当然可以在此基础上将其改造位双向链表


程序流程图(如左图):
 
5.3   详细设计与编码:
见上传程序。
 
5.4  调试分析:
     本题设计node结构来包装数据,主要注意的是在正确的地点插入连表姐点的方法,要保证链表的连续性,避免指针的非法指向。


5.5   用户使用说明:
      用户依次输入数据(非排序)并以0结尾,程序将输入数据进行排序并输出。

5.6 设计心得:
 本题加强了我对链表数据结构的理解,也加强了我对模板的理解
#include<iostream>
#include<iomanip>
using namespace std;

int  lineNum[8];
bool colHold[8] ={false};
bool diagonalHold[15] ={false};
bool invDiagonalHold[15] ={false};

void solve(int m)      //递归求解
{
 if(m==8)
 { static int m=0;
  m++;
原文请找腾讯752018766六,维-论'文.网http://www.lwfree.cn   return;
 }
 for(int i=0;i<8;i++)
 {
  if(!colHold[i] && !diagonalHold[m+i] && !invDiagonalHold[7+m-i])
  {
   lineNum[m]=i;
   colHold[i]=true;
   diagonalHold[m+i]=true;
   invDiagonalHold[7+m-i]=true;

   solve(m+1);

   colHold[i]=false;   //清除上次记录
   diagonalHold[m+i]=false;
   invDiagonalHold[7+m-i]=false;
  }
 }

}

void main()
{ solve(0);}1812

C++使用由结构形成的链表来存放数据下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.cn 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。