C/C++ 与算法
基于 C/C++ 语言介绍经典的算法并提供详细的分析和示例
荒原之梦考研数学
学考研数学,来荒原之梦
展开
-
排序算法-冒泡排序算法分析与基于C/C++的编程实现(递归实现&非递归实现&改进的冒泡排序)
冒泡排序算法的排序过程(以下排序过程按照大数位于小数右边的规则展开说明,按照大数位于小数左边的规则进行的冒泡排序与此过程类似)首先进行第 1 次遍历,选取整个队列 (队列长度为 N) 的第 1 个数字 (记为 a),和紧邻 a 后的数字 (记为 b) 比较大小,如果 a 大于 b, 则交换 a 与 b 的位置,此后,a 继续和紧邻 a 后的数字 c 比较;如果 a 小于 b, 则丢下 a,...原创 2019-05-30 12:56:35 · 1493 阅读 · 2 评论 -
在C++函数中返回多个数值的三种方法
预备知识指针函数C++ 中指针函数的基本形式:函数类型 * 函数名 (参数数据类型 参数1, 参数数据类型 参数 2,...){ 执行体 1; 执行体 2; ...}例如下面这个函数就是一个指针函数:int * a(int b[], int c){ cout<<"Hello"; return b;}指针函数的返回值是一个指针,...原创 2019-05-28 15:59:56 · 50198 阅读 · 2 评论 -
C / C++ 中的计时函数: clock()
clock() 函数是 C 标准库 time.h 中的一个函数, time.h 标准库中定义了各种涉及日期和时间的函数, 变量类型和宏. 其中, clock() 函数可以返回自程序开始执行到当前位置为止, 处理器走过的时钟打点数(即"ticks", 可以理解为"处理器时间"). 在 VC++6.0 中, 每过千分之一秒(即 1 毫秒)则 clock() 函数的返回值加 1. 但是, 处理器的时钟打...原创 2019-04-11 16:29:22 · 34679 阅读 · 1 评论 -
开始更新 [C/C++ 与算法] 专栏
今天 (2019 年 03 月 08 日) 在 CSDN 上申请到了一个新的专栏 [C/C++ 与算法], 专栏地址:https://blog.csdn.net/wy_bk/column/info/35449算法之于程序, 犹如数学之于世界, 亦如艺术之于灵魂. 假如没有算法, 代码就不会变得精妙和美丽, 世界也将因缺少智慧的光芒而暗淡无色.更新这个专栏的过程也是一个自我学习的过程, 希望在...原创 2019-03-18 19:33:10 · 144 阅读 · 0 评论 -
递归 (一): 递归思想与 C++ 中的递归函数及两个递归应用示例 (斐波那契, 汉诺塔)
什么是递归从汇编层面上看递归在汇编层面上, 递归可以看作是两个循环, 每个循环的循环参数都由另一个循环传入从算法思想上看递归递归是基于分治的, 也就是"分而治之". 当需要求解的问题的输入规模为 N, 而 N 又很大的时候, 直接按照线性过程求解将十分困难. 这个时候, 如果 N 具有某些特性, 能够被分解成更小规模的问题 n, 并且这些小规模的问题 n 满足以下条件:由全部 n 的解...原创 2019-03-18 17:19:32 · 1003 阅读 · 2 评论