资源简介
计算机专业大二必备的,非常好用的数据结构课程设计 ,代码完美运行,实验报告也是写好了的可以直接用

代码片段和文件信息
#include
#include
#include
#include
#include
#include
using namespace std;
#define HashSize 50
#define MAX 100
#define LH 1
#define EH 0
#define RH -1
FILE *fp;
int data[20];
int data2[20];
//********************************************************************
int Binary_Search(int keyint lowint high)//折半查找
{
int mid;
if(low == high)
{
if(data[low] == key)
return low;
else
return -1;
}
else
{
mid = (low + high) / 2;
if(mid == low)
mid++;
if(key < data[mid])
return Binary_Search(key low mid - 1);
else
return Binary_Search(key mid high);
}
}
void zheban()
{
int locate;
int key;
if((fp=fopen(“D:\\编程的文件\\查找算法性能比较\\折半查找.txt““r“))==NULL)
{
printf(“cannot open file\n“);
}
for(int i=0;i<20;i++)
fscanf(fp“%d“&data[i]);
fclose(fp);
printf(“\n有序序列为:\n“);
for(int i=0;i<20;i++)
printf(“%d “data[i]);
printf(“\n请输入要查找的数: “);
scanf(“%d“ &key);
if(key != -1)
{
locate = Binary_Search(key019);
if(locate != -1)
{
printf(“\n值%d的位置为:%d\n\n“ key locate+1);
}
else
{
printf(“没有找到%d\n“ key);
}
}
else
exit(1);
cout< }
//************************************************************************
typedef struct
{
int key; //关键字
int data; //信息域
}Record; //用给定的关键字值与表中其他元素的关键字值比较
typedef struct
{
Record r[MAX+1];
int length;
}SqTable;
int search(SqTable sint k)
{
int i;
s.r[0].key=k;
i=s.length; //自几用的逆序
while(s.r[i].key!=k)
i--;
return i;
}
void sunxu()
{
SqTable s;
int wzilenxy;
printf(“请输入表长:\n“);
scanf(“%d“&len);
s.length=len;
printf(“请输入表的各个元素:\n“);
for(i=1;i<=len;i++)
{
scanf(“%d“&x);
s.r[i].key=x;
}
printf(“请输入要查找的元素:\n“);
scanf(“%d“&y);
wz=search(sy);
if(wz==0)
{
printf(“不存在:\n“);
}
else
printf(“位置为:%d“wz);
}
//************************************************************************
void fibonacci(int *f)//斐波那契数
{
f[0] = 1;
f[1] = 1;
for(int i = 2;i < 20;++i)
f[i] = f[i - 2] + f[i - 1];
}
int fibonacci_search(int *aint keyint n)//斐波那契查找
{
int low = 0high = n - 1;
int mid = 0;
int k = 0;
int F[20];
fibonacci(F);
while(n > F[k] - 1) //计算出n在斐波那契中的数列
++k;
for(int i = n;i < F[k] - 1;++i) //把数组补全
a[i] = a[high];
while(low <= high)
{
mid = low + F[k-1] - 1; //根据斐波那契数列进行黄金分割
if(a[mid] > key)
{
high = mid - 1;
k = k - 1;
}
else if(a[mid] < key)
{
low = mid + 1;
k = k - 2;
}
else{
if(mid <= high) //如果为真则找到相应的位置
return mid;
else
return -1;
}
}
return -1;
}
int Fibonacci()
{
if((fp=fopen(“D:\\编程的文件\\查找算法性能比较\\斐波那契.txt““r“))==NULL
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 698368 2018-07-10 15:15 报告.doc
文件 65 2014-05-06 19:06 折半查找.txt
文件 59 2014-10-29 23:28 散列法.txt
文件 66 2014-05-06 19:06 斐波那契.txt
文件 22030 2018-03-30 08:39 1数据结构.cpp
- 上一篇:OPENJTAG驱动包
- 下一篇:AD823的相关有用资料
相关资源
- FTP课程设计(服务端+客户端)
- 数据结构年终考题范围和答案 耿国华
- 高频电子线路课程设计报告收音机
- 直流稳压电源的课程设计、安装及调
- EDA课程设计_密码锁
- 数据结构 朱战力 习题解答 数据结构
- 单片机课程设计 篮球计分器
- 数据结构课程设计 6 1 彩票系统
- 端口扫描课程设计详细的报告
- 教学计划编制系统
- 步进电机课程设计(个人设计)
- 校园网络规划与设计课程设计
- 大数(链表、数组)实现
- 编译原理课程设计:词法语法编译器
-
simuli
nk 课程设计 qpsk - 武汉理工大学 单片机课程设计 16*16点
- 数据库VFP课程设计
- 分页系统模拟实验 操作系统 课程设
- 自己写的航空订票系统c 版--数据结构
- 数据结构实验魔王语言
- 模拟段页式虚拟存储管理中地址转换
- 硬件课程设计—流水灯(quartus软件
- 超市收银系统eclipse access大学课程设计
- 航空订票系统_数据结构课程设计
- c 课程设计 职工信息管理系统
- 汇编语言,课程设计,红绿灯
- 机床液压系统课程设计卧式钻床动力
- 多项式求和(数据结构C 版)
- 尚观培训linux董亮老师关于数据结构的
- 课程设计蔬菜大棚自动控制系统,包
评论
共有 条评论