排序与查找实验报告java,查找排序实验报告 - 范文大全 - 作文仓库-www.zuowencangku.com...
查找排序实验报告
文章《查找排序实验报告》是由【作文仓库】的会员【笑着的人怎么哭了】为大家整理并分享的,仅供大家参考,欢迎阅读!
数据结构实验报告
实验名称:查找
班级:12级电气本2
学号:2012081227
姓名:赵雪磊
指导教师:梁海丽
日期:2013年11月18日
数学与信息技术学院
一、实验目的
1.掌握二叉排序树的概念。
2.掌握查找的不同方法,并能用高级语言实现查找算法。
3.实现二叉排序树的基本操作方法。
二、实验要求
给定一个记录关键字的值,与二叉排序树的根结点值比较,如果小于根结点的值,则向左子树查找;如果大于根结点的值,则向右子树查找。如果查找到叶子结点leaf,仍没有找到记录,则:如果关键字的值小于leaf的值,则插入该leaf结点的左边,做leaf的左孩子,否则做leaf的右孩子。
三、算法描述
template
class hashdict
{
private:
Elem* HT; // 散列表
int M; // 散列表大小
Elem TOMB; //墓碑
int currcnt; // 现有元素数目
Elem EMPTY; // 空槽
int p(Key K, int i) const // 探查函数
{ return linear(i); }
int h(int x) const { return x % M; } // 散列函数
int h(char* x) const { // 字符串散列函数
int i, sum;
for (sum=0, i=0; x[i] != '\0'; i++) sum += (int) x[i];
return(sum % M);
}
int linear(int i) const {return i;} //线性探查
int square(int i) const { //二次探查
if (i%2==0) return -(i*i/4);
else return (i+1)*(i+1)/4;
}
int rehash (Key K, int i) const;
int division(int x ) const { return x % M; } //除余法
int ELFhash ( char* key )const {
unsigned long h = 0;
while(*key) {
h = ( ch << 4 ) + *key++;
unsigned long g = h&0xF0000000L;
if (g) h^= g >> 24;
h = ~g;
}
return h % M;
}
public:
hashdict(int sz, Elem e, Elem t){// 构造函数, e用来定义空槽M=sz; EMPTY= e; TOMB=t;
currcnt=0; HT=new Elem[sz];
for(int i=0; i}
~hashdict() { delete HT; }
bool hashInsert(const Elem&);
bool hashSearch(const Key&, Elem&) const;
Elem hashDelete(const Key& K);
int size() { return currcnt; } // 散列表中现有元素数
};
四、程序清单
#include
#include
#define OK 1
#define ERROR 0
int Search_Bin(int score[],int length,int key)
{
int low,high,mid;
low=1;
high=length;
while(low<=high)
{
mid=(low+high)/2;
if(score[mid]==key)
return mid;
else if(keyhigh=mid-1;
else if(key>score[mid])
low=mid+1;
}
return ERROR;
}
int main()
{
int score[11];
int length=10;
int key,index;
printf(
for(int i=1;i<=length;i++)
{
scanf(
}
printf(
scanf(
if(Search_Bin(score,length,key))
{
index=Search_Bin(score,length,key);
printf(
}
else
printf(
return OK;
}
五、实验结果与分析
六、实验心得
通过本次查找实验,让我懂得了如何应用冒泡排序,如何对有序数组进行折半查
找,加深了对折半查找的理解,初步掌握了其基本概念和操作。
排序与查找实验报告java,查找排序实验报告 - 范文大全 - 作文仓库-www.zuowencangku.com...相关推荐
- java面向对象实验结论及心得_20162305 实验二 Java面向对象程序设计 实验报告
20162305 实验二 Java面向对象程序设计 实验报告 实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.熟悉S.O.L.I.D ...
- 20145206《Java程序设计》实验二Java面向对象程序设计实验报告
20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...
- java 数组中某个数出现的概率_剑指Offer解题报告(Java版)——排序数组中某个数的个数 38...
分析问题 问题只需要找到排序数组中某个数K的个数,由于已经是排序了,K一定是在一堆的,所以我们只需要找到第一个K的index1,然后找到最后一个K的index2就可以了 而寻找K的过程我们一般通过二分 ...
- 《Java程序设计》实验二 实验报告
实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.没有Lin ...
- Java第二次实验报告——Java面向对象程序设计
北京电子科技学院(BESTI) 实 验 报 告 课程名称:java程序设计实验 班级:1352 姓名:洪韶武 学号:20135219 成绩: ...
- java构成对象的三要素_20155237 《JAVA程序设计》实验二(JAVA面向对象程序设计)实验报告...
20155237 <JAVA程序设计>实验二(JAVA面向对象程序设计)实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S ...
- java程序设计输入输出实验_20145320《Java程序设计》第五次实验报告
20145320<Java程序设计>第五次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.05.06 18: ...
- java继承机制实验报告_JAVA继承实验报告.doc
JAVA继承实验报告 JAVA语言程序设计 实验报告 实验一 实验题目: 面 向 对 象 编 程 指导老师: 卢照 专业班级:计算机科学与技术系1106班 姓 名:*****) 2014年3月20日 ...
- java实验报告系统分析怎么写_20155218 《Java程序设计》实验二(Java面向对象程序设计)实验报告...
20155218 <Java程序设计>实验二(Java面向对象程序设计)实验报告 一.实验内容及步骤 (一)单元测试 主要学习安装和使用junit来测试编写的程序,并学习以TDD(Test ...
最新文章
- 计算机软件及其软件系统,计算机软件系统课件
- 数据结构与算法-列表相关时间复杂度
- Codeforces 1091E New Year and the Acquaintance Estimation Erdős–Gallai定理
- 回答一下这些游戏帧数有关的问题吗?
- TikTok欧洲首个数据中心将建在爱尔兰 投资5亿美元
- MongoDB学习笔记lt;七gt;
- python 如何加密自己的脚本
- pytorch macos_Windows,Linux和MacOS上的PyTorch安装
- LeetCode 68. Text Justification
- linux 线程的基本知识
- 如何将APP安装包发布到360手机助手上
- amaze ui教程
- python 抖音短视频 去水印_如何去除抖音快手等短视频平台的水印?(工具+原理)...
- swiftui改变图片尺寸_SwiftUI中的等轴测视图
- 退出痛区-使用NDepend进行静态分析
- 微信h5分享好友和朋友圈功能
- 解决报错:The Module Root specified is not a module according to Intellij
- 微信小程序输入框字数限制以及计算
- WIN10共享打印机连接出现0x0000011b错误代码无法共享打印
- 智能门锁:电源管理概述2
热门文章
- Python中将两个列表(list)数据zip起来
- R语言使用dplyr聚合统计分组数据、ggplot2可视化分组线图、使用geom_line函数自定义设置线条类型、粗细、颜色(Change line types + colors by groups)
- R语言ggplot2可视化气泡图:无填充色的气泡图、自定义填充色的气泡图
- R语言使用ggplot2包geom_jitter()函数绘制分组(strip plot,一维散点图)带状图(双分类变量分组:色彩配置、添加箱图、位置参数调整)实战
- R语言list.files函数获取文件列表实战
- Python构建lassocv模型并输出Rad-score公式
- python使用正则表达式抽取文件中的IP地址
- 俞敏洪+摆脱恐惧+世界想让你做一个平凡的人、你信了吗
- 什么是多重共线性问题?如何判别多重共线性问题?怎么避免多重共线性对模型和学习的干扰?
- 分式的二阶导数怎么求_高考数学导数大题如何抢分? 名师手把手教你! 高一高二也要看...