自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序员

先死后活,死去活来

  • 博客(8)
  • 资源 (22)
  • 收藏
  • 关注

原创 程序9——层序遍历二叉树(从上往下打印二叉树)

从上往下打印二叉树就是层序遍历二叉树。还有一种变形,是逐层打印二叉树,这个的实现,请详见逐层打印二叉树。 如上图所示,则打印结果是:1,2,3,4,5,6,7在这个实现过程中需要用到队列。代码如下:void levelBinaryTree(tree *T) { if(T == null) { return; } queue q; tree *t

2015-12-22 21:42:11 1158

原创 程序10——逐层打印二叉树

逐层打印二叉树与从上往下打印二叉树不同。 逐层打印二叉树的结果为: 1 2,3 4,5,6 7void levelPrintTree(tree *T) { if (T == null) { return; } queue q; tree *t = T; q.push(q); q.push(null); while(!q

2015-12-22 21:39:10 2069 1

原创 程序8——二叉树的镜像

所谓二叉树的镜像,就是二叉树照镜子看到的结构,也就是说,左右子树是相反的。如下图所示: 上图中,第二棵二叉树就是第一棵二叉树的镜像。解决思路: 根节点不变,如果同时有左右结点的话,就交换一下位置。这其实还是一个递归的过程。 代码如下:void binaryTreeMirror(tree *T) { if (T == null) { return; }

2015-12-16 21:57:34 498

原创 程序7——一棵二叉树是不是另外一棵二叉树的子结构

树的子结构是指:在二叉树A中存在二叉树B,也是就是二叉树B是二叉树A的子结构。如下图所示: 基本思路: 首先在二叉树A中查找与二叉树B的根节点的值相同的节点,然后再一次判断该节点的左右孩子节点是不是跟二叉树B的左右孩子节点相同。代码如下:

2015-12-16 10:25:12 393

原创 程序5----判断平衡二叉树

概念所谓平衡二叉树就是, 二叉树的任意结点的左右子树的高度差不超过1. 如下图就是一棵平衡二叉树. 基本思路实现根据定义,可以很容易的想到, 可以求出每个结点的左右子树的高度, 然后比较高度差. 最先需要解决的就是求解二叉树的高度. int treeDepth(tree *T) { if (T == null) return 0;

2015-12-14 10:47:45 820

原创 freemarker简单入门Demo

近日在搞一个关于模板的东西. 基本过程是这样的: 假设是thrift服务吧, thrift从数据库中读取模板, 结合应用后端传过来的Map数据, 将Map数据填到模板中. 使用的框架时freemarker. 这里对freemarker做简单介绍. freemarker说白了就是, 使用数据模型去填充模板, 然后输出文本. Demo如下: pom依赖 <dependency>

2015-12-11 09:57:01 5139

转载 同步 异步 阻塞 非阻塞 IO

这4个名次的组合一般是: 同步阻塞 同步非阻塞 异步非阻塞 没有异步阻塞,因为太讲不通了,请看下文: 下文来自网络。同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non

2015-12-04 15:28:02 431

原创 java多线程同步 synchronized

注:本文内容参考自网络,源头以无法追溯,但是纯手工总结敲打。如有不准确之处,还请各位指教。多线程同步概述提到多线程就不得不提共享资源。当有多个线程去访问同一个共享资源时,会造成错误。比如比较常见的:同时写一个变量i。初始时i = 0,当一个线程读取 i 要对其加一操作时,另一个线程也到来了,读取 i 并对其加一操作,这时最后得到的结果i = 1。但是,理想情况下应该是 i = 2。这就是需要对多线程

2015-12-02 13:05:20 719

java反编译工具jd-gui

jd-gui java 反编译工具 将class文件反编译成java文件

2016-04-25

HexEditor插件

HexEditor插件 notePad++

2016-03-15

HexEditor.dll

notepad++查看二进制文件的插件

2016-03-15

junit-4.12.jar

用于写java测试单元的必须的jar包,从官网下的,肯定可用。

2015-07-13

junit-4.12

用于写java测试单元必要的jar包,这个是从官网下的,保证可用哦

2015-07-13

单链表 环 入口点 环长

求单链表是否有环,如果有环求出环的入口点及环长

2014-04-24

C51实现LCD1602

keil C51 实现LCD1602 保证能用 可以写字符串 可以写小数 main函数中有实例

2013-04-03

c51实现lcd1602四线驱动

51单片机 c51实现lcd1602四线驱动

2013-04-01

PL-2303 win7 驱动 usb RS232

PL-2303 win7 驱动 usb RS232 保证可以使用

2013-03-22

VC6.0 工具

VC6.0 工具 显示行号 智能提示 有使用说明及visual active 安装文件和破解文件

2013-01-27

keil uvision 3 注册机 带CID的

keil uvision 3 注册机 带CID的 CID=CSXRK-XZD85 LIC0=RC9U8-3AX1C-ZNSAE-CU1JS-SW7YD-VJD6F

2013-01-23

hex转coe工具

hex coe 51hex_bin corGenerator 在研究MC8051对ROM进行配置时需要coe文件,这里给出了使用keil写的流水灯的hex文件,并将其转换成了coe文件,此coe可以正常使用,并且给出了51hex_bin.exe和CoeGenerator.exe

2013-01-17

数据结构 严蔚敏 C语言版 链队列表示与实现

数据结构 严蔚敏 C语言版 链队列表示与实现 很给劲哦 绝对不会令您失望的。

2013-01-16

数据结构 严蔚敏 C语言版 行编辑程序

数据结构 严蔚敏 C语言版 行编辑程序 很给劲哦 绝对不会令您失望的。

2013-01-16

数据结构 严蔚敏 C语言版 汉诺塔

数据结构 严蔚敏 C语言版 汉诺塔 很给劲哦 绝对不会令您失望的。

2013-01-16

数据结构 严蔚敏 C语言版 数制转换

数据结构 严蔚敏 C语言版 数制转换 很给劲哦 绝对不会令您失望的。

2013-01-16

数据结构 严蔚敏 C语言版 循环队列

数据结构 严蔚敏 C语言版 循环队列 很给劲哦 绝对不会令您失望的。

2013-01-16

数据结构 严蔚敏 C语言版 顺序栈

数据结构 严蔚敏 C语言版 顺序栈 顺序栈的实现 很给劲哦 绝对不会令您失望的。

2013-01-16

数据结构 严蔚敏 C语言版 括号匹配

数据结构 严蔚敏 C语言版 括号匹配 while((c = getchar()) != EOF) { switch(c) { case '[': push(&sqSta;, c); break; case '(': push(&sqSta;, c); break; case ']': if(getTop(&sqSta;, &e)) { if(e == '[') { pop(&sqSta;, &temp;); } if(e == '(') { printf("\nnot match\n"); return ERROR; } } break; case ')': if(getTop(&sqSta;, &e)) { if(e == '(') { pop(&sqSta;, &temp;); } if(e == '[') { printf("\nnot match\n"); return ERROR; } } break; default : printf("\nerror\n"); return ERROR; break; } } if(stackEmpty(sqSta)) { printf("\nmatched\n"); } else { printf("\nnot matched\n"); }

2013-01-16

数据结构严蔚敏C语言版 迷宫

数据结构 严蔚敏 C语言版 迷宫 status mazePath(seqStack *S, posType start, posType end) { posType curPos; //current positon int curStep; //the ordinary number sElemType e; curPos = start; curStep = 1; do { if(pass(curPos)) //the current position is "accessed" { footPrint(curPos); e.ord = curStep; e.seat = curPos; e.di = 1; push(S, e); if(curPos.xPos == end.xPos && curPos.yPos == end.yPos) { return OK; //arrive at the final } curPos = nextPos(curPos, 1); curStep++; }//end of if(pass(curPos)) else //the current position is not "accessed" { if(!stackEmpty(*S)) //the stack is not empty { pop(S,&e); while(e.di == 4 && !stackEmpty(*S)) { markPrint(e.seat); //the current position must be marked by '#' pop(S,&e); }//end while if(e.di < 4) { e.di++; push(S,e); curPos = nextPos(e.seat, e.di); } }//end of if(!stackEmpty(*S)) }//end of else }while(!stackEmpty(*S)); }

2013-01-16

液晶显示12864驱动

液晶显示12864驱动适用于EasyArm1138

2012-12-04

空空如也

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

TA关注的人

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