算法
文章平均质量分 75
皮皮安
菜鸡弟弟
展开
-
归并排序
分治法可以通俗的解释为:把一片领土分解,分解为若干块小部分,然后一块块地占领征服,被分解的可以是不同的政治派别或是其他什么,然后让他们彼此异化。分治法的精髓:分--将问题分解为规模更小的子问题;治--将这些规模更小的子问题逐个击破;合--将已解决的子问题合并,最终得出“母”问题的解;原创 2021-02-28 22:57:21 · 785 阅读 · 9 评论 -
STL常用容器
文章目录前言一、STL是什么?二、常用容器1.stack2.queue3.vector4.list总结前言这边建议大家能别熬夜就别熬夜,实在不行就直接通宵......通了几次宵之后,身体实在顶不住了,大家还是早睡早起吧。不多bb,今天来看C++的标准库一、STL是什么?STL 是 C++ 标准程序库的核心。STL 内的所有组件都由模板构成,其元素可以是任意型别。程序员通过选用恰当的群集类别调用其成员函数和算法中的数据即可,但代价是 STL 晦涩难懂。示例:STL 是 C++ 通用原创 2021-02-01 23:20:00 · 210 阅读 · 1 评论 -
搜索
文章目录前言一、什么是搜索?二、基本搜索1.线性搜索2.二分搜索3.散列法总结前言感觉自己的阅读量是一天不如一天了,不BB了,今天说一下常用的搜索方式。一、什么是搜索?搜索,在我们日常生活中非常常见,就比如我们打开UC浏览器,搜索波~~~上寒烟翠,ennnn就会出现…嘿嘿嘿。所谓的搜索,就是在数据集合中寻找给定关键字的位置或者判断有没有这个关键字。基本的搜索算法有,线性搜索、二分搜索、散列法。二、基本搜索1.线性搜索线性搜索就是从数组开头,依次访问各个元素,逐个检测该元素.原创 2021-01-30 04:11:01 · 3270 阅读 · 1 评论 -
常用排序
文章目录前言一、什么是排序?二、常用排序1.插入排序2.冒泡排序3.选择排序总结前言众所周知,我皮皮安最近在苦学数据结构和算法,前面的栈和队列的访问量还可以,昨天的算法与复杂度为什么就拉了跨呢。这着实不行,但这个数据结构和算法确实难理解,正片之前,先要给大家一个学习数据结构的网站,答应我,就算有了它,也要回来看皮皮安的博客,帮皮皮安学习。数据结构图解这离有最常见的数据结构等方面的知识,什么?看皮皮安的博客也行。低调低调,有一说一,这里面有最全的数据结构图解,注意!是图解。我皮某人看大段的.原创 2021-01-27 21:12:53 · 207 阅读 · 4 评论 -
算法与复杂度
前言嚯嚯嚯,大家想我没有,好像有好几天没更新。皮皮安,你是不是不学习了?我没有,我不是,别乱说啊。虽然这几天是有点堕落了,但是我还是完成了mybatis持久层框架的学习。原本计划一个星期学完mybatis,在花一个星期用一用的。我从11号开始着手学的,到上周二我才学到动态sql,这不行,所以我就专心花时间学完了mybatis,后续我也会将自己的学习成果写出来。鄙视这不是回来了,嘿嘿嘿。少废话,今天学了什么?今天啊,今天没啥啊,就是算法的一些概念,大家主要靠理解啊。..原创 2021-01-26 03:44:43 · 298 阅读 · 0 评论 -
栈
文章目录前言一、什么是栈?二、栈里面要知道的概念1.栈顶/栈底2.进栈、入栈、压栈3.出栈、退栈上例题Java/C代码遇到的问题问题1:++i和i++问题2:思维定势前言昨天的队列如果理解了,今天的栈就非常好理解了。但今天学习栈的时候也发现了好多问题,比如思维定势呀,++i和i++的一些问题,在这里我也想和大家分享一下,我相信每个程序人都和我一样,遇到类似,甚至相同的问题。我始终认为学习中的学是认识、了解的意思,习是练和改错的过程,合为一起才是真正的学习。犯错不可怕,犯很多次错也不可怕,相反,你只.原创 2021-01-19 23:16:25 · 1272 阅读 · 0 评论 -
队列
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、队列是什么?二、队列里面要知道的概念1.出列2.入列3.空队列上例题Java/C代码前言没想到吧,我皮某人又回来了。经过这么久的偷懒,哦不,沉淀,于2021年1月18号回归写博客的日子。回想那段日子,仿佛就这昨天别bb了,快上点东西吧最近会定期更新数据结构方面的内容以及相应的算法题,等到后期会更新JavaWeb,以及框架方面的知识,作为一只刚飞的菜鸟,需要各路大神为我的博客提出改正,一定第一时间修改,三克油~原创 2021-01-18 18:20:38 · 2188 阅读 · 6 评论 -
百钱买百鸡(for循环)
百钱买百鸡 鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,之前一,百钱买百鸡,问翁,母,雏各几何。文言文翻译:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱(这里为了突出数字,都以阿拉伯数字标出)。用100文钱买100只鸡,那么公鸡,母鸡和小鸡各买多少只。 假设公鸡有a只,母鸡有b只,小鸡有c只,可得到以下关系 a+b+c=100 5a+3b+z/3=100可以看出这是一个不定方程,以高中的数学思想 的话,很难解出这道题,但现在我们有有了电脑,让电脑给我们实现。在这里我们先给出Java代码v原创 2020-12-16 23:02:26 · 7786 阅读 · 0 评论 -
队列(一)
队列提出一个问题:什么是队列?队列是一个有序列表,可以是数组和链表来实现。(不知道链表是什么?没关系,后面会说到)队列遵循的先入先出的原则。这里MaxSize是数组的最大容量front是队列头,rear是队列尾MaxSize-1是队列以数组实现的下表是从0开始的 private int maxSize;//数组的最大容量 private int front;//队列头 private int rear;//队列尾 private int[] arr;//用于原创 2020-12-07 22:52:30 · 216 阅读 · 0 评论 -
稀疏数组
稀疏数组 在日常写题中,我们经常用到二维数组,多数情况下的大多数值都是默认值0,这使得二维数组存在很多没有意义的数据。 为了减少存在没有意义的数据,这里使用稀疏数组。稀疏数组固定的列:行,列,值。 首先我创建一个二维数组 int sparseArray[][] = new int[11][11]; sparseArray[1][2] = 1; sparseArray[2][3] = 2; for (int[] sparse:sparseArray原创 2020-12-04 08:35:22 · 127 阅读 · 1 评论 -
皮皮安学算法第三天(二分查找)
写在前面今天是学算法的第三天“嚯,你个死皮皮安,第二天呢?被你吃了?”“ennnnnn,第二篇太捞了,有空可以去我主页看”“说的你吧捞一样”今天看了一下午算法,说是一下午,大概也就三个小时吧,进度很慢,主要花在做题上面,后面我也会把今天写的题和源码发出来。今日所学二分查找定义:算法是由静态方法rank()实现的,它接受一个整数键和一个已经有序的int数组作为参数。如果该键存在于数组中则返回他的索引,否则返回-1.算法使用两个变量lo和hi,并保证如果键在数组中则它一定在a[lo…hi]中,原创 2020-07-22 22:33:43 · 190 阅读 · 0 评论 -
皮皮安学算法第二天(两数之和)
今日所学 package 刷题.两数之和; /* 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] */ import java.util.Arrays; pu原创 2020-07-21 21:08:43 · 1759 阅读 · 0 评论 -
皮皮安学算法(第一天)
写在前面看着最近勇哥也开始入驻CSDN了,而且是日更,原本我打算下周的考试周结束了在开始CSDN的更新,看着看着,手就有点痒痒了,就想写点啥。嗯嗯嗯,只不过最近有点忙…我也不知道忙啥,感觉就是忙,瞎忙的那种,也不知道写点什么。就提前一周进入算法的学习吧,Java那边我还是会定期更新,一直到JDBC访问数据库那就会转向数据库,JS,JQ的学习,后面的JSP,SSM都会去了解一下。大家都知道,算法和数据结构是编程的灵魂,所以,只要我还活着,对算法和数据结构的探索都不会停下,现在的我,从最简单的算法开始学起,原创 2020-07-19 23:18:39 · 141 阅读 · 0 评论