算法设计与分析
QxwOnly
宝剑锋从磨砺出,梅花香自苦寒来。
展开
-
LeetCode——75. 颜色分类(C语言)
颜色分类 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 注意: 不能使用代码库中的排序函数来解决这道题。 示例: 输入: [2,0,2,1,1,0] 输出: [0,0,1,1,2,2] void sortColors(int* nums, int numsSize){ //桶排序。 //定义一个一维数组,存有红白蓝色三颜色。 i.原创 2020-09-16 20:47:51 · 711 阅读 · 0 评论 -
改进的二分搜索
改进的二分搜索算法 时间复杂度:循环体每循环一次时间复杂度减少一半, 而且判断的时间复杂度为O(1),所以根据公式得算法时间复杂度为T(n)=1*T(N/2)+O(1)=O(logn) 利用二分搜索的思想,在数组中查找关键字key。 当left<=right,如果key==a[mid],则表示x在数组中,返回下标i,j, 如果key>a[mid],则left=mid+1, 如果key...原创 2020-01-02 20:43:43 · 407 阅读 · 0 评论 -
合并排序
https://blog.csdn.net/Windows_Defender/article/details/85077231 https://blog.csdn.net/ASCIIdragon/article/details/84029878 https://blog.csdn.net/YF_Li123/article/details/75072991 算法思想: 主要利用分治算法思想: 将需要...原创 2020-01-02 20:42:22 · 293 阅读 · 0 评论 -
动态规划解最长公共子序列(LCS)
本次博客,直接简述核心动态规划部分,需要先对动态规划以及什么是最长公共子序列有简单了解,可以参考下博客, 最长公共子序列 (LCS) 详解+例题模板(全) https://blog.csdn.net/lxt_Lucia/article/details/81209962 动态规划解最长公共子序列(LCS)(附详细填表过程) https://blog.csdn.net/weixin_40673608/...原创 2020-01-02 20:34:36 · 356 阅读 · 0 评论