工作室课题学习情况总结(第一周)
第一周的工作室课题主要学习练习的内容是排序算法这一块的内容,其中我在做题时主要用到了写程序时的三个基本排序算法——直接插入排序、起泡排序、选择排序。下面为大家依次介绍:
一.直接插入排序(straight inserttion sort)。基本思想是:依次将待排序的无序区中的每一个记录插入到已排好序的有序区中,直到全部记录都排好为止,如下图所示。
代码展示:
void InsertSort(int * r,int n)
{int i,j,temp;for(i = 1 ; i < n ; i++){temp = r[i];for(j = i-1 ; j >= 0 && temp < r[j] ; j--){r[j+1] = r[j];cout << r[j] << " ";}r[j+1] = temp;}
}
二.起泡排序(bubble sort)。基本思想:两两比较相邻记录,如果反序则交换,直到没有反序的记录为止,如下图所示。
代码展示:
void BubbleSort(int*r,int n)
{int j , exchange , bound , temp;exchange = n-1;while(exchange != 0){bound = exchange;exchange = 0;for(j = 0 ; j < bound ; j++){if(r[j] > r[j+1]){cout << r[j+1] << " ";temp = r[j];r[j] = r[j+1];r[j+1] = temp;exchange = j;}}}
}
三.选择排序(selection sort)。基本思想:第i趟排序在待排序序列的第ri~rn(1≤i≤n-1)中选取最小的记录,并和第i个记录交换作为有序序列的第i个记录,如下图所示。
代码展示:
void simpleSelect(int* r, int n)
{int index, temp;for (int i = 0 ; i < n-1; i++){index = i;for (int j = i+1; j < n; j++){if (r[j] < r[index]){index = j;}}if (index != i){temp = r[i];r[i] = r[index];r[index] = temp;}}
}
*注:本文章为作者自己工作室课题学习笔记,并非学术性文章,不喜勿喷! 欢迎大佬评论指点迷津,指出不足!
*本文章参考文献:《数据结构——从概念到C++实现(第三版)》
工作室课题学习情况总结(第一周)相关推荐
- 工作室课题学习情况总结(第二周)
第二周的工作室课题主要学习练习的内容是查找这一块的内容,其中我选取了个在做题是碰到的例子来展开讲解: 一.彩票 Description 为丰富男生节活动,贵系女生设置彩票抽奖环节,规则如下: 1.每张 ...
- 工作室课题学习情况总结(第三周)
第三周的工作室课题主要学习练习的内容是搜索这一块的内容,其中我选取了个在做题是碰到的例子来展开讲解: 一.铺地毯 为了准备一个学生节,组织者在会场的一片矩形区域(可看做是平面直角坐标 系的第一象限)铺 ...
- 萌新的java学习之路——第一周
萌新的java学习之路--第一周 第一周的学习 这是我学习Java的第一周,写这个博客更多的时为了总结自己这一周的学习情况,如果有人看到我写的博客,有什么问题的话,可以问我.虽然我也是一个小白,但我会 ...
- 学习周报之第一周(数据分析)
第一周学习报告 1.看完了熊老板的视频,记录下了一些感悟:学习心得 2.开始看MOOC上面北京理工大学的数据分析与展示的课程,打好数据分析的基础,学习链接 3.看了Health Insurance C ...
- Python+Django+LeanCloud+腾讯云函数学习记录(第一周学习记录)
第一周学习记录 开始从事微信小程序云开发和后台搭建的实习工作,这半年来会一直定期更新学习记录 1.微信爬虫模块 1.Itchat包 使用itchat包的初衷是为了通过该包的login端口直接通过扫 ...
- Hubble Zhang的学习日记(第一周)
为了督促自己每天都有进步,在这里记录下每天遇到的问题和学到的新知识,仅作为个人回顾使用. 目录 日记(第一周) 20200929 20200930 20201001 20201002 20201004 ...
- 小鱼鱼的 Python 学习笔记(第一周)
前言:百无聊赖之下,小鱼鱼开始学习Python , 并且尝试做一定的输出,整理和回顾所学知识.学习资源为慕课上北京理工大学嵩天老师极其团队讲授的课程,博文内容基本为上课所学的再现. ~~ 这是一条正经 ...
- (前端学习)寒假第一周周报
了解了一下前端学习的路线,我有点震惊,学习的东西真的很多很多,如下: 原来css也只是准备工作,不禁感慨任重而道远 附带一张我HTML和css的视频学习进度 这周学习完了HTML和css中的属性和一部 ...
- 实习日/周/月记学习计划(第一周)
2019.07.05 从主管到一级级leader介绍下来,意识到银行的主要技术栈还是Java相关的,而我对Java的认知永远停留在大三做课程设计时的jsp+javabean了.. 海哥初步给我介绍了实 ...
最新文章
- C++中operator关键字(重载操作符)
- 电脑硬件配置——组装查询软件
- iphone电池怎么保养_苹果iPhone手机怎么开启【优化电池充电】
- Windows删除指定时间之前指定后缀名的文件
- java 求集合平均数_图像二值化方法介绍(转载学习)
- Spring集成PageHelper的简单用法
- 《转》ReentrantLock实现原理深入探究
- mysql主从复制服务器配置
- 在linux下挂载ios镜像文件,linux下挂载iso镜像文件
- Doom启示录(一)---李乃峰所崇拜之 两个约翰!
- 使用scipy来进行曲线拟合
- spss并行配置不正确解决方案
- [个人笔记]HCIP-Routing Switching-IEEP/H12-223
- mysql的字段空格是null_空字符与空格字符、NULL、空字符串
- Spring Cloud Alibaba与Spring Cloud的区别
- Redis的常用命令,Redis常用操作命令
- CSR867x — IOS设备搜索到的BLE外设名称与实际名称不相符的问题分析
- HIVE学习系列——windows Hadoop安装(上)
- 华为云服务器,新用户福利!!0元免费体验云产品最长可达一年
- 用matlab编写的游戏,用matlab编写的俄罗斯方块小游戏