嘿嘻

Unity杂物聚集地

五大常用算法——分治法,动态规划,回溯法,分支界限法,贪心算法

分治算法 一、基本概念    在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法...

2016-10-20 10:35:28

阅读数 366

评论数 0

C#链表类

C#链表可用类LinkedList来存放。本文模仿LinkedList类写一个对链表进行查询、插入、存取等基本操作的LinkList类。 熟悉C++的朋友应该知道C++中利用指针对链表进行操作,而C#中没有指针,但因为C#中类在赋值时传递的是地址,因此仍然可以利用这点制作一个链表。 publi...

2016-10-17 21:16:22

阅读数 1434

评论数 0

内存申请与释放

使用 char* p = new char[100]申请一段内存,然后使用delete p释放,有什么问题? 会有内存泄露 不会有内存泄露,但不建议用 编译就会报错,必须使用delete []p; 编译没问题,运行会直接崩溃 答案:B C++告诉我们在回收用 new 分配的单个...

2016-10-15 12:19:08

阅读数 736

评论数 0

排序算法——快速排序

今天介绍快速排序,这也是在实际中最常用的一种排序算法,速度快,效率高。就像名字一样,快速排序是最优秀的一种排序算法。 思想 快速排序采用的思想是分治思想。 快速排序是找出一个元素(理论上可以随便找一个)作为基准(pivot),然后对数组进行分区操作,使基准左边元素的值都不大于基准值,基准右边...

2016-10-13 18:02:30

阅读数 112

评论数 0

排序算法——冒泡排序

在前面的文章中,已经向大家介绍了插入排序和选择排序两种基本的排序方法。今天要介绍的是另外一种排序方法——冒泡排序。 思想 同之前介绍的两种排序方式一样,冒泡排序也是最简单最基本的排序方法之一。冒泡排序的思想很简单,就是以此比较相邻的元素大小,将小的前移,大的后移,就像水中的气泡一样,最...

2016-10-13 18:01:13

阅读数 109

评论数 0

排序算法——插入排序

思想 插入排序的思想有点像打扑克抓牌的时候,我们插入扑克牌的做法。想象一下,抓牌时,我们都是把抓到的牌按顺序放在手中。因此每抓一张新牌,我们都将其插入到已有的排好序的手牌当中,注意体会刚才的那句话。也就是说,插入排序的思想是,将新来的元素按顺序放入一个已有的有序序列当中。 举个例子可能...

2016-10-13 17:51:44

阅读数 116

评论数 0

浅谈C# 多态的魅力(虚方法,抽象,接口实现)

浅谈C# 多态的魅力(虚方法,抽象,接口实现) 前言:我们都知道面向对象的三大特性:封装,继承,多态。封装和继承对于初学者而言比较好理解,但要理解多态,尤其是深入理解,初学者往往存在有很多困惑,为什么这样就可以?有时候感觉很不可思议,由此,面向对象的魅力体现了出来,那就是多态,多...

2016-10-12 19:58:49

阅读数 173

评论数 0

提示
确定要删除当前文章?
取消 删除