C++学习笔记
文章平均质量分 58
止战之伤
一个菜鸟的学习笔记
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
找出一个数组中出现次数超过一半的元素
遍历数组,并且保存两个值:一个是数组中的一个数字,一个是次数。当遍历下一个数字时,如果下一个数字和当前保存的数字相同,则次数加1;如果不同则次数减1。如果次数为0,则需要保存下一个数字,并把次数设为1。由于要找的数字出现的次数比其他所有数字出现的次数之和还要多,所以要找的数字肯定是最后一次把次数设为1的那个数字。 代码如下: #include using namespace std;转载 2014-04-02 17:37:57 · 1104 阅读 · 0 评论 -
C++基础
//可能会考到的C++知识点: 1.new/delete 与 malloc()/free() 的区别? malloc和free是C语言的标准库函数,new和delete是C++的运算符,他们都用来申请和释放内存,但是new/delete会调用类的构造函数和析构函数。 2. #include和#include"a.h" 有什么区别? #include编译器是在标准库路径下开始搜索转载 2014-04-02 20:59:45 · 546 阅读 · 0 评论 -
插入排序
/****把待排序数组分成已经排序的和待排序的,每次从待排序数组中获取一个元素,找到它在已经排序的数组的位置,然后它后续元素后移,把这个元素插入。***/ demo如下: #include using namespace std; void InsertSort(int a[],int length) { for(int i=1;i { if(a[i-1]>原创 2014-04-02 22:33:51 · 444 阅读 · 0 评论 -
atio函数的重写
/******** atoi实现 *********/ #include #include using namespace std; void atoi(const char *str,int &num) { assert(str!=NULL); int result=0; int sign=1; if((str[0]>='0'&& str[0原创 2014-04-02 22:39:48 · 697 阅读 · 0 评论 -
C++学习之--冒泡排序
//冒泡排序是一种最基本的排序算法,操作过程是: 比较相邻的两个元素,如果前面一个比后面一个大,那么就交换位置。 对每一组相邻元素都做同样的工作。 重复这个步骤。直至有序。 第一个循环是需要比较的趟数。 第二个是每趟需要比较的元素个数。 冒泡排序的时间复杂度是O(n^2). 他是稳定的排序算法。 #include #include #include #include原创 2014-04-02 16:58:26 · 613 阅读 · 0 评论 -
寻找第二大的数字
/***可以用两个变量,一个记录最大的元素,一个记录第二大的元素,通过循环来得到***、 代码如下: /***寻找第2大的元素**/ #include using namespace std; int second_big(int a[],int length) { if(length { cout exit(1); } int max=a[1];原创 2014-04-02 17:49:58 · 559 阅读 · 0 评论 -
二分查找
/***二分查找适应于有序排列的元素,如果不是有序的,则无法使用。它是先和中间数比较,如果比中间数大,那么移动到中间数右边区域比较,反之则左边区域,直到全部比较完成***/ demo如下: #include using namespace std; int binarysearch(int arr[],int length,int key) { int start=0; int en原创 2014-04-02 21:52:17 · 501 阅读 · 0 评论
分享