自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

北方的雪之博客专栏

一步步 一点点 脚踏实地

  • 博客(16)
  • 收藏
  • 关注

转载 《算法导论》之动态规划和贪心算法 0-1背包问题

1、前言  前段时间忙着搞毕业论文,看书效率不高,导致博客一个多月没有更新了。前段时间真是有些堕落啊,混日子的感觉,很少不爽。今天开始继续看算法导论。今天继续学习动态规划和贪心算法。首先简单的介绍一下动态规划与贪心算法的各自特点及其区别。然后针对0-1背包问题进行讨论。最后给出一个简单的测试例子,联系动态规划实现0-1背包问题。2、动态规划与贪心算法  关于动态规划的总结请

2013-10-27 18:34:20 2482

转载 《算法导论》之 贪心算法—活动选择问题

前言:贪心算法也是用来解决最优化问题,将一个问题分成子问题,在现在子问题最优解的时,选择当前看起来是最优的解,期望通过所做的局部最优选择来产生一个全局最优解。书中先从活动选择问题来引入贪心算法,分别采用动态规划方法和贪心算法进行分析。本篇笔记给出活动选择问题的详细分析过程,并给出详细的实现代码进行测试验证。关于贪心算法的详细分析过程,下次在讨论。1、活动选择问题描述    有一个需

2013-10-27 18:33:11 1088

原创 数据结构之(图之存储结构)之十字链表

// CreateGraph_OrthogonalList.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include typedef int NodeType;#define MAXVEX 100typedef struct EdgeNode

2013-10-26 16:21:54 919

转载 2014找工作总结-机会往往留给有准备的人

其实我的求职过程在十一之前就已经结束了,总体讲比较顺利。参加面试的几家公司基本都拿到了offer,分别是阿里巴巴、美团网、创新工场涂鸦移动以及华为。当时也参加了其他公司的面试,比如人人,一面过后收到了二面通知,拒了。创新工场豌豆荚一面结束后等消息。十一过后的公司基本都是酱油而过。去哪儿面试拒了。腾讯一面后收到了二面的通知,也拒了。主要是因为自己已经拿到了理想公司的offer。看来人还是需要一点

2013-10-26 16:10:50 1418

原创 数据结构之(图之最小生成树)Kruskal(克鲁斯卡尔)算法

1)图最小生成树生成算法常用的有两种:Prim(普利姆)算法和Kruskal(克鲁斯卡尔)算法;2)Kruskal算法设计的精妙之处在于:a)将各个边按照权值的大小排序;b)检测新添加的边是否会和其它边组成回路的算法(其主要思想是,在将节点添加到最小生成树节点的过程中,节点会自动分成两个集合,如果新添加边的始端点经过循环和末端点重合,即说明会组成回路)3)其时间复杂度是:N*logN,其中

2013-10-26 12:50:15 1376

原创 数据结构之(图最短路径之)Floyd(弗洛伊德)算法

1)弗洛伊德算法是求图最短路径的另外一种算法,其适用于求图中任意两节点之间最短路径;2)其基本思想也是动态规划,时间复杂度是O(N^3),N代表节点个数;3)动态规划的实现步骤是:a)找出问题的最优子结构;b)根据最优子结构求出递归解;c)以自下而上的方式求出最优解;d)解出最优解的最优路径;其难点往往是在b)环节,解决了b)环节,其它环节都是很好实现的;4)图在运用动态规划的时候难点

2013-10-26 10:55:14 4658

原创 数据结构之(图最短路径之)Dijkstra(迪杰斯特拉)算法

1)常用的图最短路径的算法有两个:Dijkstra算法和Floyd算法;2)Dijkstra算法适用于求图中两节点之间最短路径,Floyd算法适于求图中任意两节点间;3)两种算法的主要思想是动态规划,而Dijkstra算法设计比较巧妙的是:在求源节点到终结点自底向上的过程中,源节点到某一节点之间最短路径的确定上(这也是我之前苦于没有解决的地方),其解决方法是通过比较每次循环中源节点到各个节

2013-10-26 10:24:33 6048

原创 数据结构之(图)之深度遍历及广度遍历

深度遍历:从图中某个顶点v出发,访问此顶点,然后从v的未被访问的邻接点出发深度优先遍历图,直至图中所有和v有路径相通的顶点都被访问到。其更适合:目标比较明确,以找到目标为主要目的的情况。广度遍历:类似于树中的层序遍历,首先遍历完和某一顶点v相连的所有顶点,然后再遍历和这些顶点相连的顶点,以此类推。其更适合于:不断扩大遍历范围时找到相对最优解的情况。具体代码如下://

2013-10-25 15:03:18 1146

原创 数据结构之(图之)深度遍历和广度遍历

深度遍历:从图中某个顶点v出发,访问此顶点,然后从v的未被访问的邻接点出发深度优先遍历图,直至图中所有和v有路径相通的顶点都被访问到。其更适合:目标比较明确,以找到目标为主要目的的情况。广度遍历:类似于树中的层序遍历,首先遍历完和某一顶点v相连的所有顶点,然后再遍历和这些顶点相连的顶点,以此类推。其更适合于:不断扩大遍历范围时找到相对最优解的情况。具体代码如下://

2013-10-25 15:02:22 1399

原创 数据结构之(图存储结构之)邻接表

邻接表:适用范围:时间复杂度:具体程序如下:// CreateGraph_AdjacencyList.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "stdio.h" #include "stdlib.h" #include

2013-10-24 20:18:40 936

原创 数据结构之(图存储结构之)邻接矩阵

图的邻接矩阵:适用范围:时间复杂度:具体程序如下:// CreateGraph_AdjacencyMatrix.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "stdio.h" //#include "stdlib.h" #d

2013-10-24 19:56:55 980 1

原创 数据结构(之)KMP算法

// KMP_algorithm.cpp : Defines the entry point for the console application.//#include "stdafx.h"#includeusing namespace std;class KMP{private:public: //KMP(); void matchStr(char source[],

2013-10-13 22:38:57 552

原创 数据结构(之)动态规划总结

一、            动态规划的实现步骤1.        找出问题的最优子结构1)        寻找最优子结构时,可以遵循一种共同的模式:a)        问题对的一个解可以是做一个选择b)        假设对一个给定的问题,已知的是一个可以导致最优解的选择c)        在已知这个选择后,要确定哪些子问题会随之发生,以及如何最好的描述所得到的子问题空间d

2013-10-13 12:46:23 1160

原创 数据结构之(归并排序)

1.        归并排序算法?其基本思想是:假设初始序列含有n个记录,则可以看成是n个有序的子序列,每个子序列的长度是1,然后两两归并,得到[n/2]个长度为2或1的有序子序列;再两两归并,…..,如此重复,直至得到一个长度是n的有序序列为止。2.        时间复杂度总体的复杂度为O(NlogN)// MergeSort.cpp : Defines the entry

2013-10-12 23:36:32 621

原创 数据结构之(堆排序)

1.        什么是堆?它具有如下性质1)        它是个完全二叉树2)        每个节点的值都大于或等于左右孩子节点的值是大顶堆3)        每个节点的值都小于或等于左右孩子节点的值是小顶堆4)        具有N个节点的树建立堆时间复杂度为O(N)2.        堆排序算法?其基本思想是:将待排序的序列构造成一个大顶堆。此时,整个序列的

2013-10-12 22:35:29 738

原创 MFC下调用控制台

AllocConsole(); // 打开控制台资源       freopen( "CONOUT$", "w+t", stdout );// 申请写       freopen( "CONIN$", "r+t", stdin ); // 申请读       printf("Hello World!\n"); // 写数据       char ch = getchar()

2013-10-09 18:01:57 899

空空如也

空空如也

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

TA关注的人

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