📄 subject_49596.htm
字号:
<p>
序号:49596 发表者:wanlei 发表日期:2003-08-12 11:17:16
<br>主题:算法高手救我,在线等,急急急!!!
<br>内容:有这样的一组数(如下),要设计一个数据结构,或是用现有的MFC里的类来实现:要求1.可以读入数据,数据的结构为:(1)序号,比如1.2.3.......(2)此组数据的个数(3)数据,成队出现的,最后在每组的后面加了2组0;要求2.读入后要可以动态的对每小组数据在尾端添加新的数据(成对)<BR>数据如下:<BR><BR>350 //为总个数<BR><BR>1(序号,第一组) 19(个数,19对,2对0不算)<BR>180 14376 180 14384 196 14384 208 14376 224 14368 228 14364 220 14352 208 14352 196 14356 192 14344 212 14308 212 14304 <BR>204 14304 184 14324 168 14336 164 14348 172 14356 180 14364 180 14376 0 0 0 0 <BR><BR>2(序号,第二组) 8(个数,8对)<BR>52 14376 60 14376 64 14368 64 14356 <BR>2 14356 52 14356 48 14364 52 14376 0 0 0 0 <BR> <BR>3 8<BR>716 14380 732 14380 752 14364 740 14336 732 14332 700 14360 700 14368 716 14380 0 0 0 0 <BR>.<BR>.<BR>.<BR>.<BR>.
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:a1b2c3 回复日期:2003-08-12 11:30:34
<br>内容:两种方法:<BR>1.作一个记录的CRecord类,包含序号和当前组的数据,数据使用CArray,可以动态添加和删除元素。<BR>再建立一个对象数组来存放CRecord,可以实现任意个记录的添加和删除。<BR><BR>2.使用双表。类似于空间数据结构。一个数组中放序号、数据的起始位置和个数,另一个放数据。<BR><BR>个人意见。其实第一个更好维护和使用。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:ax 回复日期:2003-08-12 13:05:56
<br>内容:其实不用自己创建类,自定义一个结构和CArray搞定(如果使用stl,vector搞定),如下:<BR>struct Point<BR>{<BR> int x;<BR> int y;<BR>};<BR>typedef CArray<Point,Point &> DataAry;<BR>typedef CArray<DataAry*,DataAry *> Datas;<BR>// 用来保存所有数据<BR>Datas MyDatas;<BR>DataAry * pAry = NULL;<BR>// 加入第一组数据<BR>pAry = new DataAry;<BR>Point pt;<BR>pt.x = 180;<BR>pt.y = 14376;<BR>pAry->Add(pt);<BR>pt.x = 180;<BR>pt.y = 14384;<BR>pAry->Add(pt);....<BR>MyDatas.Add(pAry);<BR><BR>// 加入第二组数据<BR>pAry = new DataAry;<BR>pt.x = 52;<BR>pt.y = 14376;<BR>pAry->Add(pt);<BR>...<BR>MyDatas.Add(pAry);<BR>..<BR><BR>// 最后别忘了释放内存<BR>int nCount = MyDatas.GetSize();<BR>for(int i = 0; i < nCount;i++)<BR>{<BR> pAry = MyDatas[i];<BR> if(pAry != NULL)<BR> {<BR> delete pAry;<BR> MyDatas[i] = NULL;<BR> }<BR>}<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:wanlei 回复日期:2003-08-12 16:18:13
<br>内容:谢谢两位大虾的建议,谢谢a1b2c3第一时间的建议,和ax的详细的解答
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -