自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 leetcode:N-queens

//解题思路:使用回溯法解决N皇后问题,是常见的解决方法。分N步放置皇后,由于皇后之间不能同行、同列、同斜线,所以每次放置皇后的时候,都要考虑是///否与已有的皇后“冲突”,如果冲突,则改变位置,直至所有皇后放置完毕。class Solution {public: vector > solveNQueens(int n) { vector pos_queen(n,-1);

2015-06-20 11:44:45 333

原创 c++中的static关键字总结

参考http://www.cnblogs.com/BeyondAnyTime/archive/2012/06/08/2542315.html1.面向过程设计中的static1.1静态全局变量//Example 1#include void fn();static int n; //定义静态全局变量void main(){   n=20;   cout<<n<<endl;

2015-05-19 17:32:53 350

原创 如何理解面向对象编程

面向对象是基于万物皆对象这个哲学观点. 把一个对象抽象成类,具体上就是把一个对象的静态特征和动态特征抽象成属性和方法,也就是把一类事物的算法和数据结构封装在一个类之中,程序就是多个对象和互相之间的通信组成的.       面向对象具有封装性,继承性,多态性.封装隐蔽了对象内部不需要暴露的细节,使得内部细节的变动跟外界脱离,只依靠接口进行通信.封装性降低了编程的复杂性

2015-05-06 22:01:27 371

原创 卡特兰数的应用

参考http://blog.csdn.net/wuzhekai1985四种典型的应用:(括号化/出栈顺序/凸多边形三角划分/给顶节点组成二叉树的问题)1、递推公式令h(0)=1,h(1)=1,catalan卡特兰数满足递推式:h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)例如:h(2)=h(0)

2015-04-22 10:11:49 1395

原创 宽度优先搜索(BFS)的应用——走迷宫

题目描述:sun所在学校每年都要举行电脑节,今年电脑节有一个新的趣味比赛项目叫做闯迷宫。sun的室友在帮电脑节设计迷宫,所以室友就请sun帮忙计算下走出迷宫的最少步数。知道了最少步数就可以辅助控制比赛难度以及去掉一些没有路径到达终点的map。比赛规则是:从原点(0,0)开始走到终点(n-1,n-1),只能上下左右4个方向走,只能在给定的矩阵里走。输入:输入有

2015-04-20 15:24:09 1322

原创 一些c++的笔试题

1、若函数fun的函数头为: int fun(int i , int j)且函数指针变量p指向函数fun的赋值语句是()A、p = fun(i , j);B、p = fun;C、p = * fun;D、p = &fun;2、以下说法中正确的是()A、#define 是C语句,而 printf不是B、#define 和 printf 都是C语句C、printf

2015-04-20 15:21:50 713

原创 八皇后的递归解法

经典的递归用法的例子。就是8*8的棋盘上方八个皇后,是的这个八个皇后不得在同一行、同一列和相同对角线上。1、由于八个皇后的任意两个不能处在同一行,那么肯定是每一个皇后占据一行。于是我们可以定义一个数组columnindex[8],数组中第i个数字表示第i行的皇后的列号。先把数组的8个数字分别用0~7初始化,接下来就是对数组做全排列。因为我们是用不同的数字初始化数组,所以任意两个皇后肯定不同咧。

2015-04-09 10:08:26 596

原创 字符串排列和组合的问题

1、题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。解决方法:递归,分成第一个字符和后面部分的字符。先分析所有第一个字符的情况,然后固定第一个字符,递归求出后面n-1个字符void Permutation(char* pStr, char* pBegin);////

2015-04-08 20:10:54 314

原创 leetcode Binary Tree Postorder Traversal

Given a binary tree, return the postorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3}, 1 \ 2 / 3return [3,2,1].Note: Recursive solution

2015-04-06 14:12:48 304

原创 c++内存管理

点击打开链接1、内存分配方式(全局数据区、代码区(存函数)、栈、堆)1、内存分配方式(全局数据区、代码区(存函数)、栈、堆)内存分配方式有三种:   (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。   (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结

2015-04-05 17:11:23 519

原创 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-04-05 13:57:06 297

原创 顺序容器

1、vector容器的自增长为了支持快速的随机访问,vector容器的元素以连续的方式存放——每一个元素都紧挨着前一个元素存储为了使 vector 容器实现快速的内存分配,其实际分配的容量要比当前所需的空间多一些。vector 容器预留了这些额外的存储区,用于存放新添加的元素。于是,不必为每个新元素重新分配容器。所分配的额外内存容量的确切数目因库的实现不同而不同。比起每添加一个

2015-04-05 13:53:38 69567 1

空空如也

空空如也

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

TA关注的人

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