算法与数据结构
LL596214569
一个有点强迫症的编程学习者。
展开
-
纸上谈兵: 排序算法简介及其C实现
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 排序算法(Sorting Algorithm)是计算机算法的一个组成部分。 排序的目标是将一组数据 (即一个序列) 重新排列,排列后的数据符合从大到小 (或者从小到大) 的次序。这是古老但依然富有挑战的问题。Donald Knuth的经典之作《计算机转载 2017-10-05 21:33:01 · 249 阅读 · 0 评论 -
用栈实现八皇后问题
国际象棋中皇后势力的范围是其所在位置的水平线、垂直线以及两条对角线。就像下面这样 其中的 9 就表示皇后,其中的 1 表示皇后的势力范围。于是就产生了一个问题,在 n * n 的一个棋盘上,最多只能放置 n 个皇后使得他们不能互相攻击。...原创 2018-07-16 21:53:39 · 5885 阅读 · 7 评论 -
归并排序
归并排序是一个很古老的排序算法,但到了今天依旧具有强大的生命力,因为他是第一个可以在最坏情况下依然保持O(nlog n) 运行时间的确定性排序算法。 归并排序的主体思想就是分治策略。分治就是将一个大问题分解为很多个小问题,对每一个小问题进行解决,最后根据小问题的解生出大问题的解。具体到了排序中就是以一个数组为例,首先将其由中点分解为两个小数组,再对两个小数组进行分别的...原创 2018-07-15 12:47:24 · 207 阅读 · 0 评论 -
(C++)反片语
题目:输入一些单词,找出所有满足如下条件的单词:该单词不能通过字母重排,得到输入文本中的另外一个单词。在判断是否满足条件时,字母不分大小写,但在输入时应保留输入中的大小写,按字典序进行排列(所有大写字母在小写字母的前面)样例输入:ladder came tape soon leader acme RIDE lone Dreis peatScAlE orb eye Rides deale...原创 2018-11-07 22:01:18 · 682 阅读 · 0 评论 -
教你彻底学会动态规划——入门篇
原文地址: https://blog.csdn.net/baidu_28312631/article/details/47418773#commentBox动态规划相信大家都知道,动态规划算法也是新手在刚接触算法设计时很苦恼的问题,有时候觉得难以理解,但是真正理解之后,就会觉得动态规划其实并没有想象中那么难。网上也有很多关于讲解动态规划的文章,大多都是叙述概念,讲解原理,让人觉得晦涩难懂,...转载 2018-12-13 18:59:22 · 598 阅读 · 0 评论 -
二分查找法
二分法是个很基础的算法,其实现过程是:在有序列表中,取中间的记录作为比较关键字,若给定值与中间记录的关键字相等,则查找成功;若给定的值小于中间记录的关键字,则在中间记录的左半区间继续查找;若给定值大于中间记录的关键字,则在中间记录的右半区间继续查找;不断重复这个过程,直到查找成功。否则查找失败。在二分查找中,最好的情况是要查找的目标正位于中间位置,在第一次被找到;最坏的情况是从开始一直找到最后...原创 2019-03-17 20:04:08 · 180 阅读 · 0 评论 -
PTA 最大子列和问题
01-复杂度1最大子列和问题(20分)给定K个整数组成的序列{N1,N2, ...,NK},“连续子列”被定义为{Ni,Ni+1, ...,Nj},其中1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最...原创 2019-03-17 20:07:15 · 610 阅读 · 2 评论