排序与查找

为什么80%的码农都做不了架构师?>>>   hot3.png

  • sort.h

#ifndef SORT_H_INCLUDED
#define SORT_H_INCLUDEDvoid bubble_sort(int a[], int len);void select_sort(int a[], int len);#endif // SORT_H_INCLUDED



  • sort.cpp

#include "sort.h"void bubble_sort(int a[], int len)
{int tmp;for (int i = 0; i < len-1; ++i){for (int j = i+1; j < len; ++j){if ( a[i] > a[j] ){tmp = a[j];a[j] = a[i];a[i] = tmp;}}}
}void select_sort(int a[], int len)
{int min;int tmp;for (int i = 0; i < len-1; ++i){min = i;for (int j = i+1; j < len; ++j){if ( a[min] > a[j] ){min = j;}}if (min != i){tmp = a[min];a[min] = a[i];a[i] = tmp;}}
}

  • search.h
#ifndef SEARCH_H_INCLUDED
#define SEARCH_H_INCLUDEDint binary_search(int *a, int len, int value);#endif // SEARCH_H_INCLUDED




  • search.cpp

#include "search.h"int binary_search(int *a, int len, int value)
{int low;int mid;int high;low = 0;high = len - 1;while (low <= high){mid = (low + high) / 2;if (a[mid] < value){low = mid + 1;}else if (a[mid] > value){high = mid - 1;}else{return mid;}}return -1;
}




  • main.cpp

#include <iostream>
#include <cstdlib>
#include <cstdio>#include "sort.h"
#include "search.h"using namespace std;int main()
{int a[] = {3, 1, 7, 6, 4, 10, 9};int len = sizeof(a)/sizeof(int);for (int i = 0; i < len; ++i){printf("%d\t", a[i]);}printf("\n");select_sort(a, len);for (int i = 0; i < len; ++i){printf("%d\t", a[i]);}printf("\n");int value1 = 6;int index = binary_search(a, len, value1);std::cout << index << std::endl;return 0;
}





转载于:https://my.oschina.net/kimiz/blog/195997

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LCD——S5PV210的LCD的理论与操作

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 参考博客 s5pv210 LCD编程原理 - biaohc - 博客园 一、关于LCD的简介 1、LCD简介 &#xff08;1&#xff09;什么是LCD LCD&#xff08;Liquid Crystal Display&#xff09;俗称液晶。液晶是一种材…

Java学习总结之第十一章 Java集合

一、总结 1. 所有Java集合类都位于java.util包中&#xff0c;与Java数组不同&#xff0c;Java集合中不能存放基本数据类型&#xff0c;只能存放对象的引用。 2. Set、List、Map统称为Java集合。 3. 在将对象存储到集合类中时&#xff0c;为加快存储速度&#xff0c;要求被在座对…

text/html与text/plain的区别

1.ContentType 属性指定响应的 HTTP 内容类型。如果未指定 ContentType&#xff0c;默认为 text/HTML。 2.text/html按网页形式解析报文体 text/plain为无格式文本&#xff0c;即直接将报文体输出 3.当输出的报文体中含有html结构型标签如head ,body,html等时&#xff0c;浏览器…

分析三星提供的sd_fusing文件夹(用来制作SD卡启动镜像)

以下内容源于网络资源的学习与整理&#xff0c;如有其侵权请告知删除。 参考博客 uboot分析&#xff1a;SD卡镜像制作脚本分析 - 走看看 如何烧写u-boot到SD卡 S5PV210 Uboot开发与移植01&#xff1a;Uboot概述&#xff08;推荐&#xff09; 一、sd_fusing文件夹简介 1、文件…

Linux系统管理----LVM逻辑卷和磁盘配额作业习题

1&#xff0e;为主机增加80G SCSI 接口硬盘 2&#xff0e;划分三个各20G的主分区 [rootlocalhost chen]# fdisk /dev/sdb 命令(输入 m 获取帮助)&#xff1a;n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): Using default r…

外存——S5PV210的外部存储器(nandflash与inand的介绍)

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 参考内容 关于iNand ,oneNand,moviNAND的区别——大家一起来扫盲 - 嵌入式系统 总结 本文首先介绍了目前主流的外存设备有哪些。 然后介绍了NandFlash芯片的接口、结构、常见操作&#xff0c;以及…

软件定义的数据中心已经来临

VMware和微软提供了软件定义的数据中心的解决方案。在软件定义的数据中心中&#xff0c;所有的资源——包括计算、存储、可用性、网络和安全等——都实现了虚拟化和自动化。本文主要关注的是其中新加入的特性&#xff1a;虚拟化网络与安全。 为了提供一个完全自动化的数据中心&…

21 个非常有用的 .htaccess 提示和技巧

Apache Web 服务器可以通过 .htaccess 文件来操作各种信息&#xff0c;这是一个目录级配置文件的默认名称&#xff0c;允许去中央化的 Web 服务器配置管理。可用来重写服务器的全局配置。该文件的目的就是为了允许单独目录的访问控制配置&#xff0c;例如密码和内容访问。下面是…

【笔记目录1】【jessetalk 】ASP.NET Core快速入门_学习笔记汇总

当前标签: ASP.NET Core快速入门 共2页: 1 2 下一页 任务50&#xff1a;Identity MVC&#xff1a;DbContextSeed初始化GASA 2019-03-02 14:09 阅读:16 评论:0任务49&#xff1a;Identity MVC&#xff1a;Model前端验证GASA 2019-03-02 14:08 阅读:6 评论:0任务48&#xff1a;I…

PWM信号作用示例(调节LED台灯亮度)

以下内容源于网络资源的学习与整理&#xff0c;非原创&#xff0c;如有侵权请告知删除。 比如你有5V电源&#xff0c;要控制一台灯的亮度。 &#xff08;1&#xff09;传统方式 串联一个可调电阻&#xff0c;改变电阻&#xff0c;灯的亮度就会改变。 &#xff08;2&#xff09…

第二十二章 6未命名的命名空间

//第二十二章 6未命名的命名空间 /*#include <iostream> using namespace std; namespace {int x2; } namespace {int y3; } int main() {cout<<"x:"<<x<<" y:"<<y<<endl; //输出的结果就是未命名空间的x和y的值&…

阅读,

1&#xff0c;2月28日&#xff0c;杭州&#xff0c;浙江省最大规模招聘会&#xff0c;超过5万名大学生在雨中等待进场。2009年&#xff0c;中国需要就业的高校毕业生超过700万人&#xff0c;截至9月1日就业率为74%&#xff08;国家统计局数字&#xff09;。中国已决定放缓高校扩…

uboot中关于LCD的代码分析

以下内容源于朱有鹏《物联网大讲坛》课程的学习&#xff0c;如有侵权&#xff0c;请告知删除。 1、在uboot-jiuding/board.c中&#xff0c;init_sequence中的display_banner中的open_backlight函数中&#xff0c;给GPF3_5输出高电平。 注释掉这一句uboot的LCD显示照样正常的&am…

HDU-1069 Monkey and Banana

链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1069 题意&#xff1a;n种长方形木块&#xff0c;长宽高x,y,z&#xff0c;要求叠放要按照长宽严格递减&#xff08;不能相等&#xff09;&#xff0c;问最高能叠多高 思路&#xff1a;由于一种木块有三种叠放方式&a…

对 makefile 中 override 优先级的学习体会

上例子 override gaoabcgao12345all:  echo $(gao) 运行的结果&#xff0c;make abc override 指令比其他的变量赋值优先级要高。 结束转载于:https://www.cnblogs.com/gaojian/archive/2012/10/04/2711412.html

寒假自助游之济南

以前很少去旅行&#xff0c;主要原因是孩子年龄比较小&#xff0c;再就是经济方面的考虑。如今孩子渐渐长大了&#xff0c;行路与读万卷书同等重要&#xff0c;遂决定以后无论寒暑假都应陪孩子到处走一走。我不喜欢那种走马观花式的跟团游&#xff0c;因而自助游便是最佳选择。…

与fastboot相关的知识

以下内容源于朱有鹏嵌入式课程的学习&#xff0c;如有侵权&#xff0c;请告知删除。 一、fastboot的基本知识 1、什么是fastboot &#xff08;1&#xff09;fastboot是android使用的一种刷机方法。 android系统设计了2种刷机方式&#xff1a;fastboot和recovery。 &#xf…

OpenCL向量相加

原文http://www.olcf.ornl.gov/training_articles/opencl-vector-addition/ 本文仅仅是为了学习OpenCL而做的的相关翻译。 由于原文中的例子不能在我的环境中运行&#xff0c;因此做了一些改动。 通过这个例子能很好地了解OpenCL的编程模型。 1. 简介 这个例子是表示了两个向量…

AndroidManifest.xml文件解析(转帖)

原帖地址&#xff1a;http://www.cnblogs.com/pilang/archive/2011/04/20/2022932.html 一、关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录&#xff0c;描述了package中暴露的组件&#xff08;activities, services, 等…