自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Pixel_pig

Stay hungry and foolish.

  • 博客(5)
  • 资源 (2)
  • 收藏
  • 关注

原创 分治算法----快速排序

一.算法思想: 假设要对某数组进行由小->大排序 (1) 分解: 对于乱序数组a[R](存取范围[0->R],有R+1个数),取一个基准元素a[P](一般以第一个数即a[0]为基准),确定某个Partition(位置)Q ,使a[Q]右边的数都大于等于a[P],a[Q]左边的数都小于等于a[P]. (2)递归分治:分解之后,数组变成3部分 a[0]-a[Q],a[Q],a[Q+1]-a[R]

2015-12-27 21:36:01 502

原创 二分查找的非递归与递归算法

一.引入: 假设一个已经[排好序的数组a[n] ,若要搜索其中某个元素x,一般想到的是逐个查找,倘若x刚好在a[n],则最坏的情况需要n次比较,如若x不在数组a中,则更加得不偿失. 二分查找作为一个典型的分支策略,实现了对n个排好序的数组进行折半查找,每次取a[n/2]和x比较,找到则返回下标, 如果a[n/2]>x,由于是排好序的数组,则下一趟直接在0-n/2之间查找,else在a[n/2]

2015-12-20 12:54:17 939

原创 关于Java的多线程的创建

一.线程的概念: 线程(thread),又叫轻量级的进程(Lightweight Process, LWP),它包括线程ID,当前指令指针,寄存器集合和堆栈. 在java中可以把一个程序转换成多个独立的子任务,每个子任务可以比喻为一个线程.强大的操作系统会有自动分割CPU的制度.为每个线程做调度.注意(一般考虑)在单CPU模式下,同个时间点只能运行一个线程,只不过由于CPU的高速切换,在一个时

2015-12-06 21:28:43 708

原创 n后问题2.0(拉斯维加斯随机算法)

前言: 昨天总结了个传统穷举的回溯法,考虑到由于递归回溯法时间复杂度高,超过12的皇后计算代价太大.如果基数过大,回溯法的优势就不明显了. 所以关于该算法的改进还有另一种拉斯维加斯(Las Vegas)算法,结合了随机函数,提高了效率. 一.源程序: #include #include #include #include using namespace std; class Queen {

2015-12-05 21:43:20 1285

原创 n后问题(回溯法)

一.问题描述: 在n*n格子上放置n个皇后, 按照国际象棋规矩不可让皇后相互攻击, 即如何两个皇后不放在同一列同一行同一斜线上. 二.算法设计: 将问题转化为逐行放置皇后,即第一次放第1行,第二次放第2行,依次类推放至第n行皇后则放置完毕,如此每次放置只需考虑皇后的列冲突和斜线冲突.因为每次皇后都在新的一行放置.假设数组 x[i] 表示第i个皇后放的列数,如x[3] = 4; 表示第3个(第

2015-12-04 21:36:01 3721

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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