史上最详细的C语言冒泡排序算法
未经同意,请勿转载!如有收货,请留一赞,不胜感激!
同时欢迎加入我们的qq交流群:326079727
话不多说上代码:
c语言:
void bubbing(){
int init_arr[] = {,,,,,,,,,};//define init the array
//going to the exinternal loop,start to loop from 0
int tmp;
int len = sizeof(init_arr)/;//获取数组的长度,因为c语言的每个int型占四个字节,所除以4
for (int i = ; i < len; i++) {//外层循环,从第一个数开始比较,每一轮下来,都能获取到一个最大值,然后放到数组最后面。
for (int j = ; j < len-i-; j++) {//j的初始值为也为0,但是遍历到len-i-1时就不再遍历了,因为len-j-1后面的值是已经排好序的值。
if (init_arr[j + ] < init_arr[j]) {//开始进行判断,每一轮都通过判断相邻两个值大小,把大的放到后面。
int t = init_arr[j];
init_arr[j] = init_arr[j+];
init_arr[j+] = t;
}
}//printf("%d",init_arr[i]);
}
for (int k = ; k < len- ; k++) {//进行打印排序好的数组
printf("%d\n",init_arr[k]);
}
}
Python语言:
def bubbing():
list=[1,2,5,8,55,66,99,126,33,55]#定义列表,这里也可以任意定义其他数
#外层循环走起
#进行外层循环,这里和c语言的for循环的语法阿是不一样的,获取list的长度如此简单。
# 外层循环,外层一共进行十轮(数组的长度),每一轮都从j=0,也就是第一个数开始内层循环,进行比较判断
for i in range(0,len(list)):
for j in range(0,len(list)-i-1):
#内侧循环,每次都从第0位开始比较,一直比较到len(list)-i-1。
# 因为len(list)-i-1后面的数值已经拍好序了,所以不用再比较
if list[j]>list[j+1]:
list[j+1],list[j]=list[j],list[j+1]#python写法之骚气,不用buffer就可以进行变量值的互换。
j+=1#内部的加一
i+=1#每完成一轮则加一
print(list) bubbing()
附赠:排序动图:

史上最详细的C语言冒泡排序算法的更多相关文章
- 测试思想-测试设计 史上最详细测试用例设计实践总结 Part2
史上最详细测试用例设计实践总结 by:授客 QQ:1033553122 -------------------------接 Part1-------------------------- 方法:这里 ...
- 史上最详细的C语言和Python的插入排序算法
史上最详细的C语言和Python的插入排序算法插入排序原理:所谓插入排序,就像我们在打牌(斗地主)时,整理我们自己手中自己的牌一样,就像是2,1,3,9,J,K,5,4,这四张牌.我们要把它其中的几张 ...
- 史上最详细“截图”搭建Hexo博客并部署到Github
http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html 大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hex ...
- 史上最详细“截图”搭建Hexo博客——For Windows
http://angelen.me/2015/01/23/2015-01-23-%E5%8F%B2%E4%B8%8A%E6%9C%80%E8%AF%A6%E7%BB%86%E2%80%9C%E6%88 ...
- 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用
史上最详细Windows版本搭建安装React Native环境配置 2016/01/29 | React Native技术文章 | Sky丶清| 95条评论 | 33530 views ...
- 史上最详细的Android Studio系列教程一--下载和安装
链接地址:http://segmentfault.com/a/1190000002401964#articleHeader4 原文链接:http://stormzhang.com/devtools/2 ...
- 转 史上最详细的Hadoop环境搭建
GitChat 作者:鸣宇淳 原文:史上最详细的Hadoop环境搭建 关注公众号:GitChat 技术杂谈,一本正经的讲技术 [不要错过文末活动哦] 前言 Hadoop在大数据技术体系中的地位至关重要 ...
- 史上最详细的XGBoost实战
史上最详细的XGBoost实战 0. 环境介绍 Python 版 本: 3.6.2 操作系统 : Windows 集成开发环境: PyCharm 1. 安装Python环境 安装Python 首先,我 ...
- 史上最详细mac安装Qt教程
史上最详细mac安装Qt教程,小白看过来! 这是一篇非常适合Qt入门小白的的安装Qt教程,因为这学期我们小组的一个关于高速救援的项目要用到Qt与web进行交互式展现相关的图像,由于没有MSVC这个插件 ...
随机推荐
- Coins POJ - 1742
给出硬币面额及每种硬币的个数,求从1到m能凑出面额的个数. Input 多组数据,每组数据前两个数字为n,m.n表示硬币种类数,m为最大面额,之后前n个数为每种硬币的面额,后n个数为相应每种硬币的个数 ...
- Java编程思想——第17章 容器深入研究 读书笔记(一)
这一章将学习散列机制是如何工作的,以及在使用散列容器时怎么样编写hashCode()和equals()方法. 一.容器分类 先上两张图 来概况完整的容器分类 再细说都为什么会有那些特性. 二.填充容器 ...
- 后门免杀工具-Backdoor-factory
水一水最近玩的工具 弄dll注入的时候用到的 介绍这款老工具 免杀效果一般..但是简单实用 目录: 0x01 backdoor-factory简介 0x02 特点功能 0x03 具体参数使用 PS: ...
- mysql连接方法
一.MySQL 连接本地数据库,用户名为“root”,密码“123”(注意:“-p”和“123” 之间不能有空格) mysql -h localhost -u root -p123或mysql -u ...
- POJ 1062 昂贵的聘礼(带限制条件的dijkstra)
题目网址:http://poj.org/problem?id=1062 题目: 昂贵的聘礼 Time Limit: 1000MS Memory Limit: 10000K Total Submis ...
- 12.Nginx代理与负载均衡
1.什么是代理? 代为办理 --> 代理 2.Nginx正向代理.反向代理 正向代理: --> 上网 | 路由器替代 反向代理: --> 正向与反向代理的区别: 区别在于形式上服务的 ...
- 基础安全术语科普(四)——RFID
RFID —— Radio Frequency Identification (射频识别技术) 概念:RFID属于一种无源技术(Passive Technology) 使用:生活中RFID无处不在.如 ...
- 百万年薪python之路 -- Socket
Socket 1. 为什么学习socket 你自己现在完全可以写一些小程序了,但是前面的学习和练习,我们写的代码都是在自己的电脑上运行的,虽然我们学过了模块引入,文件引入import等等,我可以在程序 ...
- 百万年薪python之路 -- MySQL数据库之 用户权限
MySQL用户授权 (来自于https://www.cnblogs.com/dong-/p/9667787.html) 一. 对新用户的增删改 1. 增加用户 : ①. 指定某一个用户使用某一个ip登 ...
- The usage of Markdown---文字强调:加粗/斜体/文本高亮/删除线/下划线/按键效果
更新时间:2019.09.14 1. 序言 有时候,我们需要对某些文字进行强调,例如粗体和斜体.而Markdown通常可以使用星号*或者下划线_进行文字强调. 2. 加粗 如果想要达到加粗的效果,可以 ...