1.前言
时隔几个月,终于重新拾起了C++!
老司机回归,自然是“ 启动VS → 新建解决方案 → 添加新项目 ”一键三连。
啊,这丝滑的感觉,莫不是?
不能打断了这丝滑的感觉,随便写点什么,写个归并排序吧!
一顿操作猛如虎,一看编译。。。
祝大家虎虎生威!
此时的我 ⬇
怀念起了用Matlab做数字信号处理的日子。
自信心备受打击,卑微的我找到了某度(面向搜索引擎编程不只是说着玩儿的)。
问题答案非常简单,那就是VS的C++编译器不允许使用变量作为数组的长度定义数组。
然而gcc编译器就可以,看到这里我想卸了Visual Studio。
说到底还是基础不牢,地动山摇!
还是说说最后咋解决的吧,卸了Visual Studio是不可能的,这辈子都不可能的!
用vector代替数组就ok了,是不是so easy!
⬇
2.归并排序
归并排序基于分而治之的思想,即分解原问题、解决子问题、合并问题解。
我觉得两张动图就可以完美解释归并算法的原理。
分解原问题:
解决子问题:
当问题分解到只有一个数的时候,自然变得有序,子问题自然解决。
合并问题解:
归并排序可视化: