随笔分类 - 算法
摘要:题目描述见:点击跳转 解析思路 leetcode 中国中的一个中等难度面试题——把数字翻译成字符串,是一个较为简单的动态规划问题(虽然简单我也不会呀)。 咋一看这个题目描述是懵逼的,思考 10 分钟无果,果断看了解题思路,豁然开朗。 假设数字的长度为,第个数为,长度为的数
阅读全文
摘要:20190806 以下如无特殊说明都是按照升序进行排序。 源码见最下方 比较类排序 交换排序 冒泡排序 定义 是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名
阅读全文
摘要:本人最近被各种数据结构的实验折磨的不要不要的,特别是代码部分,对数据结构有严格的要求,比如写个BST要分成两个类,一个节点类,要给树类,关键是所以操作都要用函数完成,也就是在树类中不能直接操作节点,需要使用节点类中的函数来实现各种操作。 简直太麻烦,但是花时间写了也是有好处的,认真写完绝对几年...
阅读全文
摘要:ACM的在线测试里经常涉及到大量数据的的修改,求和等操作,这里介绍一种方法——树状数组。 树状数组,是一个查询和修改复杂度都为log(n)的数据结构。主要用于查询任意两位之间的所有元素之和,但是每次只能修改一个元素的值;经过简单修改可以在log(n)的复杂度下进行范围修改,但是这时只能查询其中...
阅读全文