WEB开发网
开发学院软件开发VC 比较数据排序前后的查找次数 阅读

比较数据排序前后的查找次数

 2007-03-16 21:57:41 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 题目:随机产生 1000 个 1-2000 以内的互不相同的整数,1)存储于一个数组中(不排序)2)存储于一个数组中(排序)分别应用查找运算,比较数据排序前后的查找次数,要求输入一个查找元素,输出各自的查找比较次数,哈哈哈哈~~哈哈哈哈,就当耳旁风,要求:1)查找元素 22)查找元素

本文示例源代码或素材下载

题目:

随机产生 1000 个 1-2000 以内的互不相同的整数,

1)存储于一个数组中(不排序)

2)存储于一个数组中(排序)

分别应用查找运算,要求输入一个查找元素,输出各自的查找比较次数。

要求:

1)查找元素 2

2)查找元素 1000

目的:

练习一下C++的神仙眷侣所提倡的用“类”来表达观点的编程风格。

用类来思考:

查找(CFind)是一个概念,作用于特定的数据(CData),因为数据有各种不同的特性,有排序了的(CDataSorted),和没有排序过的(CDataChaos),对于不同特性的数据,应该应用不同的查找方法, 对于排序过的数据(CDataSorted),应该使用一种查找方法(CFindBinarySearch), 对于没有排序过的数据(CDataChaos),应该使用另一种查找方法(CFindWorker), 呵呵,所以产生了如下的类图:

      +----------+               +-------+
      + CFind  +<>-------------------------->+ CData +
      +-+------+-+               +---+---+
       ^   ^                  ^
       ^   ^             +--------+------+
       ^   ^             ^        ^
 +-----------+-+ +-+-----------------+ +-----+-------+  +---+--------+  
 + CFindWorker + + CFindBinarySearch + + CDataSorted +  + CDataChaos +  
 +-------------+ +-------------------+ +-------------+  +------------+
这样的话,用户就可以通过派生CData类来加入新的存储格式的数据,通过派生CFind类来加入新的查找方法了, 不过,一般来说,查找方法都是和数据存储方式紧密耦合的,所以,嘿嘿嘿,..., 请注意我的目的呀,我只是为了练习C++才这样写的,哈哈:) 我想一定会有很多人大骂我白痴的吧,哈哈哈哈~~哈哈哈哈,就当耳旁风,不听。:)

数据的基类:(每个类的实现请在本文提供的源代码中查找)

1 2  下一页

Tags:比较 数据 排序

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接