无分类 PAT A1010 二分进制结合重点题 这道题而可以说是比较难的一道题,如果采用常规遍历,会出现时长或者溢出的问题;示例中给出的思路很值得借鉴;个人通过该示例有以下几个不同理解:1.有时候两个不同进制的数对比,我们可以进行进制,转化十进制…
java 【Leetcode】95~96 不同的二叉搜索树 Leetcode 95 不同的二叉搜索树 II 输入: 3输出: {代码…} 解释:以上的输出对应以下 5 种不同结构的二叉搜索树: {代码…} Leetcode 86 不同的二叉搜索树 给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树…
无分类 PAT A1048 二分/two points 方法一:二分查找;由于是两个数和,所以我们从i=1开始枚举,在剩下的i+1~n序列中找到m-a[i]的数,是一个递增不重复序列的查找问题,之前二分法总结过,所以不再赘述;代码如下:
无分类 PAT A1044 二分法 这道题可以利用二分来做,其实个人觉得动态规划也可以;利用二分的前提条件就是该序列是一个不下降序列;所以我们可以先构建一个sum数组,存放1-i的和值;当然题目中要计算i-j子序列的值,其实这个可以利用sum数…
无分类 算法与数据结构大系列 – NO.1 – 插入排序 这是一种就地比较排序算法。这里,维护一个始终排序的子列表。例如,维护数组的下半部分以进行排序。要在此已排序的子列表中“插入”的元素必须找到其适当的位置,然后必须将其插入其中。因此名称,插入排序。
无分类 PAT A1045 动态规划 第一种方法对于该题目其实有点取巧的感觉;首先,注意一点,对于最长不下降子序列来说,其序列的元素一定是非递减的,所以我们的当务之急是如何将值转换为递增序列,从而使得算法能够继续进行;对于这个问题,我…