- 博客(3)
- 收藏
- 关注
原创 时间复杂度的分析方法
关于代码实现,分治算法一般有两种算法实现,一种是递归,一种是递推。二分查找的主要思想是通过将n个元素分成个数大致相同的两半,取a[n/2]与x作比较,如果x=a[n/2],则找到x,算法结束,如果x<a[n/2],则只在数组a的左半部继续搜索x;通过上面思想分析,二分查找是通过分治思想,把问题分解为一份规模n/2的子问题,所以下面我通过两种方法对二分查找算法进行时间复杂度分析。首先根据公式(1),其中a是子问题数量,n/b是子问题规模,f(n)是求解分解子问题与合并解所需要的时间复杂度。
2025-04-25 14:48:51
1353
原创 一个练习git指令的神级网站
现在,一个堪称“神级”的练习网站来了!Learn Git Branching 是由 pcottle 发起的一个开源项目,它通过可视化的分支图和交互式终端模拟,为学习 Git 分支与合并提供了沉浸式的体验。整个应用运行在浏览器中,用户无需安装任何软件,就能在网页上执行真实的 Git 命令,同时在右侧看到动态更新的分支拓扑图,帮助理解命令背后的原理与流程。项目内置多个主题和关卡(如基础分支、合并冲突、交互式变基等),每个关卡都有清晰的任务目标,完成后自动判断正确与否,既有教学性也有趣味性。
2025-04-20 13:42:36
942
原创 C语言中a++与++a的区别
使用前缀自增(++a)在大多数情况下更直观且高效,而后缀自增(a++)则适用于需要在同一表达式中多次使用自增前的值的情况。3.1. 先增加的时机: ++a是在表达式求值之前执行自增操作,而a++是在表达式求值之后执行自增操作。3.2. 效率:在大多数编译器中,前缀自增(++a)往往比后缀自增(a++)更高效。++a(前缀自增): ++a是前缀自增操作符,它的含义是在变量a的值增加之前先执行自增操作。a++(后缀自增): a++是后缀自增操作符,它的含义是在变量a的值增加之后再执行自增操作。
2023-08-06 20:36:24
5052
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅