c++学习探索
文章平均质量分 72
通过C++的学习,不断积累
星河&'
奔跑的小菜鸟
展开
-
计算斐波那契递归时间复杂度
递归算法:递归次数*每次递归调用的次数。斐波那契数列的时间复杂度为:O (2^N)调用次数相当于等比数列求和;原创 2023-07-18 10:38:58 · 1031 阅读 · 0 评论 -
常用排序算法
通过不断从未排序的元素中,「比较」 和 「交换」,从而 「选择」 出一个最小的, 直到最后变成一个「升序」 序列,则算法结束。通过不断将当前元素 「插入」 到 「升序」(降序) 序列中,直到所有元素都执行过 「插入」 操作,则算法结束。通过不断比较相邻的元素,如果「左边的元素」 大于 「右边的元素」,则进行「交换」,直到所有相邻元素都保持升序,则算法结束。原创 2023-09-03 09:59:27 · 89 阅读 · 0 评论 -
二分查找-
二分法是非常重要的基础算法,其实主要就是对区间的定义要理解清楚,在循环中要始终坚持根据查找区间的定义来做边界处理。区间的定义就是不变量,那么在循环中坚持根据查找区间的定义来做边界处理,就是循环不变量规则。原创 2023-09-17 10:36:04 · 75 阅读 · 1 评论 -
求数组中只出现一次的两个数字(题解)
简单分析:因为在遍历异或的计算过程中成对出现的数字的所有位会两两抵消为 0,最终得到的结果就是那个出现了一次的数字。实现:定义一个数res=0,遍历数组让每一个数都与res进行异或操作最后res的值就是出现一次的数。如果数组中除了一个数字以外,其他数字都出现了两次,那么如何找到出现一次的数字?输入:nums = [1,2,10,4,1,4,3,3]输入:nums = [4,1,4,6]输出:[2,10] 或 [10,2]输出:[1,6] 或 [6,1]按位异或,相同为0,不同为1。原创 2023-07-21 16:47:14 · 109 阅读 · 1 评论 -
二叉树的前中后序遍历(C++)
二叉树及表达式二叉树的遍历方式原创 2023-07-17 20:40:28 · 316 阅读 · 1 评论