![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法入门
文章平均质量分 73
MaLk3r
这个作者很懒,什么都没留下…
展开
-
希尔排序( Shell Sort )使用不同的步长序列( gaps )
希尔排序( Shell Sort )使用不同的步长序列( gaps ) 希尔排序的定义 希尔排序(Shellsort),也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 说这花里胡哨的没有用 希尔排序事实上就是把插入排序的逐个遍历并排序,改成了逐间隔遍历并排序,并且使得间隔值不断变小。当间隔为1的时候,这是希尔排序的最后一次遍历插入排序。希尔排序的优化实际上就是寻...原创 2019-11-10 13:34:10 · 4380 阅读 · 0 评论 -
POJ1163 The Triangle用贪心方法和交替使用二维数组实现内存和时间优化
第一次写博客,如有不妥,请见谅。 啥也不说,先贴代码。 The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 46937 Accepted: 28425 Description 7 3 8 8 1 0 2原创 2017-01-21 11:32:03 · 459 阅读 · 1 评论 -
01背包问题(二进制解法)
题目有N件物品和一个容量为V的背包。第i件物品的重量是w[i]。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量的最大重量。基本思路首先,我想分析一下这个题目大暴力时,复杂度为什么为N^2。如果大暴力,本题目的预算次数实际为pow(2,n)-1。初等数学思路(大佬请忽略):本题中一共给定n个物品,如果要放入1个物品时为N种;如果要放入2个时候,需要从N个中取出A2N个物品;所以该题目为N...原创 2017-03-02 10:03:43 · 2853 阅读 · 1 评论 -
编程能力测试的水题
好吧,这的确是一个水题。 题目要求: 老师的要求是使用递归,不允许使用全局变量,不允许使用循环,然后求出其中的最大值。 思路: 这个就是一个类似GCD的题解,在递归中输入一个数字,然后和前一个递归传递过来的数字,进行判断最大值。然后复制,给下一次递归函数,当到达1时,返回实际有效的数组max就可以了。 // // main.cpp // DG // // Created by Ma原创 2017-03-07 20:21:25 · 1249 阅读 · 0 评论 -
递归/循环操作单链表
考虑到学校还要考察对递归的熟练程度,所以,对链表的操作递归与循环我都有写。 感觉目前递归的问题在于传值,对于链表,在于递归对下一位置的访问,希望我能在短时间内对一行GCD有更多的理解。 上代码:// // main.cpp // List-PAT // CCUT MaLker // Created by MaLker on 01/04/2017. // Finshed at 03/0原创 2017-04-04 00:38:27 · 562 阅读 · 0 评论 -
递归建立链表和链表查重
首先声明这个算法实在是不算什么高效的算法。 这个递归的主要目的是实现递归实现双层循环,数组和数组都可以,个人觉得数组需要增加一个长度。 双循环的模板个人认为这项 函数: 模板(外层循环数/*数组为相应的数,链表为指针*/,内层循环数/*同理*/,数组时需要增加数组和数组名和长度){ //首先需要判断结束信号if() //判断内层循环是否结束else if(){ 内层循环道达时因为第一原创 2017-04-07 09:49:19 · 2227 阅读 · 0 评论 -
迷宫问题(第一次DFS搜索)
一下午稍微领悟了一点搜索,大体明白了点意思。深度搜索的确就是多维空间的大暴力。 首先列出给自己的出的题目: 输入一个维度N,表示地图共有N*N个位置; 然后输入一个N*N个位置,0代表为墙,1代表路。 输出:判断能不能从左上的位置到达右下角的位置。 再次列思路: 首先理论上我的确在左上角,但事实上我实在数组中的Map[1][1]的位置,我的初始位置还有Map[0][1]和Map[1][原创 2017-03-21 20:19:10 · 543 阅读 · 0 评论 -
C语言实现的各种素数晒
素数: 百度百科:质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。 维基百科的定义为:A prime number (or a prime) is a natural number greater than 1 that has no positive divisors other than 1 a原创 2017-04-15 23:22:41 · 622 阅读 · 0 评论 -
递归建立链表单一head变量
不得不说今天左右脑同少的感觉真好。 想到自己上次写的那个递归操作,不得不说,又臭又长(还占内存!)点击打开链接 首先来写伪代码: 按照递归的基础思路来写算法。 判断是否要跳出函数 n为0的时候要跳出 然后当这个指针位是否为空,如果为空,说明当前位置存在,切已输入有效值 转入下一位 当为空的时候,说明,到达链表的尾部,生成并输入; 好了,思路如此,上代码。 // // main原创 2017-04-27 16:27:49 · 281 阅读 · 0 评论