对于一颗二叉树,可以根据先序遍历(或者后序遍历)和中序遍历(树中不含重复的数字)重新还原出二叉树。
解析:
1. 先序遍历序列的第一个元素必定是根节点,可以由此获取二叉树的根节点。
2. 根据根节点,在中序遍历序列中查找该节点,由中序遍历的性质可知,中序遍历中该根节点左边的序列必定在根节点的左子树中,而根节点右边的序列必定在右子树中。由此可以知道先序遍历中左子树以及右子树的起止位置。
3. 找到了左右子树前序遍历和中序遍历再用同样的方法分别构建左右子树,典型的递归思想。...
分类:
其他 时间:
2015-07-09 17:58:16
收藏:
0 评论:
0 赞:
0 阅读:
195
一、 UDP C/S的典型函数调用
UDP没有像TCP那样的连接,客户端直接sendto向某服务器发送数据,服务器端一直recvfrom阻塞,以接收任何客户端发送的数据。
二、 sendto和recvfrom函数
int sendto(int sockfd, const void* buff, size_t nbytes, int flag, const struct sock...
分类:
其他 时间:
2015-07-09 17:58:06
收藏:
0 评论:
0 赞:
0 阅读:
339
題目:給你一個字符串,在後面拼接一部分使得它變成回文串,使得串最短,輸出這個回文串。
分析:KMP,dp。這裡利用KMP算法將串和它的轉置匹配,看結束時匹配的長度即可。
因為串比較長,使用KMP比較合適,KMP原理請參照AC自動機總結。
說明:╮(╯▽╰)╭。
#include
#include
#include
char strA[100001];
cha...
分类:
其他 时间:
2015-07-09 17:57:56
收藏:
0 评论:
0 赞:
0 阅读:
133
题目:
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).
For example:
Give...
分类:
编程语言 时间:
2015-07-09 17:57:46
收藏:
0 评论:
0 赞:
0 阅读:
157
题目地址:NYOJ 7
曼哈顿距离:两点在南北方向上的距离加上在东西方向上的距离,即d(i,j)=|xi-xj|+|yi-yj|。对于一个具有正南正北、正东正西方向规则布局的城镇街道,从一点到达另一点的距离正是在南北方向上旅行的距离加上在东西方向上旅行的距离。
思路:因为只能东西和南北方向走,所以先把南北(X)和东西(Y)方向的坐标分开,分别求它们的最值,然后相加即可。分析可以得知,邮局的所建...
分类:
其他 时间:
2015-07-09 17:57:36
收藏:
0 评论:
0 赞:
1 阅读:
993
思想:对二叉排序树来说,其中序遍历序列为一个递增有序序列,因此,对给定的二叉树进行中序遍历,如果始终能保持前一个值比后一个值小,则说明该二叉树是一棵二叉排序树。算法如下:
KeyType predt=0;
//predt为全局变量,保存当前节点中序前趋的值,初值为最小值
int judgeBST(BSTNode *bt)
{
//返回1表示是一颗二叉排序树,返回0表示不是
int b1...
分类:
编程语言 时间:
2015-07-09 17:57:26
收藏:
0 评论:
0 赞:
0 阅读:
427
微信SDK初步结构
恩..这是微信工程的结构,嘻嘻~
http://b.hiphotos.baidu.com/image/pic/item/d1a20cf431adcbeff71cbb18aeaf2edda3cc9f80.jpg
原以为应该:
根对象中有个Articles类中,Articles类中包含一个变量名为 item的数组(list)对象才...
分类:
编程语言 时间:
2015-07-09 17:57:16
收藏:
0 评论:
0 赞:
0 阅读:
333
Token是ActivityRecord的内部静态类,我们先来看下Token的继承关系,Token extends IApplicationToken.Stub,从IApplicationToken.Stub类进行继承,根据Binder的机制可以知道Token是一个匿名Binder实体类,这个匿名Binder实体会传递给其他进程,其他进程会拿到Token的代理端。
我们知道匿名Binde...
分类:
其他 时间:
2015-07-09 17:57:06
收藏:
0 评论:
0 赞:
0 阅读:
442
Day 1.Problem A. 起床困难综合症100分做法:把数字看成二进制数。对于初始攻击力,我们将其拆成32位,并求出每一位为0和1时经过所有防御门之后分别得到的数字。然后就是按位贪心了,我们尽量让初始攻击力的高位在经过所有防御门后变成1而不是0,根据这一贪心思想,剩下要做的就是个很简单的数位贪心问题了。#include
#include
#inclu...
分类:
其他 时间:
2015-07-09 17:56:57
收藏:
0 评论:
0 赞:
0 阅读:
228
??
前段时间学习了一些关于进程的一些知识,其中分为了三个部分:进程环境、进程关系、进程控制。下边是我做的思维导图和相关理解。由于缺乏实践,对于其中很多地方理解的还不够深入。
思维导图:
进程环境:
1、启动/终止:关于进程的环境,首先是对于进程整个环境的总体认识,通过分析C语言的启动和终止,讲解了关于进程是如何启动和终止的。2、环境表:说明了对于每...
分类:
系统服务 时间:
2015-07-09 17:56:46
收藏:
1 评论:
0 赞:
3 阅读:
900
一、 域名系统(DNS)
1. 简介
DNS主要用于主机名和IP地址之间的映射。
主机名可以是简单的名字ljm,也可以是全限定域名ljm.localdomainbaidu.com等。
2.资源记录
DNS中的条目称为资源记录(RR)。我们感兴趣的RR类型只有几个:
A A记录把一个主机名映射为一个32位的IPv4地址。
AAAA 4A记录把一个主机...
分类:
其他 时间:
2015-07-09 17:56:36
收藏:
0 评论:
0 赞:
0 阅读:
1410
今天和大家分享如何判断手机上是否安装了XXX.apk。
因为国外项目在打开地图的时候一定要使用gGoogle map,像这种打开第三方软件的,android都会采用Intent进行跳转,然后根据ACTION判断类型,弹出一个选项框。但是客户非要指定Google map,所以在跳转的时候就要进行筛选,其实就是根据APK的包名进行筛选以Google map 为例~Google map的包名为com.go...
分类:
移动平台 时间:
2015-07-09 17:56:26
收藏:
0 评论:
0 赞:
0 阅读:
245
1、背景介绍
在开发应用过程中经常会遇到显示一些不同的字体风格的信息犹如默认的LockScreen上面的时间和充电信息。对于类似的情况,可能第一反应就是用不同的多个TextView来实现,对于每个TextView设置不同的字体风格以满足需求。
这里推荐的做法是使用android.text.*;和 android.text.style.*;下面的组件来实现RichText:也即在同一...
分类:
移动平台 时间:
2015-07-09 17:56:25
收藏:
0 评论:
0 赞:
0 阅读:
383
一、 简介
假设我们本章讨论的主机都是支持双栈的,即支持IPv4地址,也支持Ipv6地址。
我们本次讨论的点:客户端与服务器端使用的是不同类型的地址。因为相同类型的地址没什么可讲的。
二、 IPv4客户端与IPv6服务器
即,客户端使用IPv4地址套接字来通信,服务器端使用IPv6地址套接字通信。
原理:
0. 首先IPv6服务器主机保证既有IPv4地址,又有IPv6地址。
1...
分类:
其他 时间:
2015-07-09 17:56:06
收藏:
0 评论:
0 赞:
0 阅读:
259
首先说一下几个地方:
1.上传使用ss.upload("domin域名","源地址","目标地址,也就是storage的地址");如果要上传到storage某一个具体的文件夹下目标地址写为"upload/"+filename;文件就上传到了upload目录下。
2.storage下面所有文件的路径是http://myapp-mybucket.stor.sinaapp.com/path/file...
分类:
Web开发 时间:
2015-07-09 17:55:56
收藏:
0 评论:
0 赞:
0 阅读:
169
1.假如又多一层layer sequence:
1)需要2个时间槽。
2)需要在增加一个umv_wait_for_nba_region,不好。
2.问题的关键是item_done 和try_next_item 在同一时刻被调用,导致了时间槽的竞争。如果能错开,这个问题就不是问题:...
分类:
其他 时间:
2015-07-09 17:55:46
收藏:
0 评论:
0 赞:
0 阅读:
291
步骤一:声明NSError变量。一定要加"?",不加或者加"!"都不行。因为使用了optional,所以要用var而不用let。
var error: NSError?
步骤二:使用的时候在变量前加上"&"。
NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers, error: &error)
之...
分类:
编程语言 时间:
2015-07-09 17:55:26
收藏:
0 评论:
0 赞:
0 阅读:
530
用户有一个excel要导出,总行数有4000多行,导出时候报错了,超时了,本来更改pb.ini中最大执行时间就行了,但是用户是虚拟机,改起来麻烦,网上查找发现,解决方法报错二:30秒运行超时的错误(Maximum execution time of 30 seconds exceeded)解决办法:...
分类:
Web开发 时间:
2015-07-09 17:54:25
收藏:
0 评论:
0 赞:
0 阅读:
275
1. ls命令ls命令是列出目录内容(List Directory Contents)的意思。运行它就是列出文件夹里的内容,可能是文件也可能是文件夹。“ls -l”命令以详情模式(long listing fashion)列出文件夹的内容。"ls -a"命令会列出文件夹里的所有内容,包括以"."开头...
分类:
系统服务 时间:
2015-07-09 17:54:15
收藏:
0 评论:
0 赞:
0 阅读:
251
简述:printf、sprintf函数 转载自http://www.cnblogs.com/adslg/archive/2008/08/22/1274164.html printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息,调用格式为:printf("", );其中格式化字符...
分类:
其他 时间:
2015-07-09 17:54:06
收藏:
0 评论:
0 赞:
0 阅读:
276