自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

知之为知之,不知为不知,是知也

  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

原创 二叉树的前 中 后序遍历,递归和非递归实现以及转换成双向链表

#include <stdio.h>#include <iostream>#include <algorithm>#include <stack>using namespace std;struct TreeNode {    int val;    TreeNode *left, *right;};// 递归遍历void...

2018-03-07 18:18:12 418

原创 Android 多网络支持

Android多个网络连接Android 5.0 LOLLIPOP (API Level 21) 高级连接新增的多网络功能允许应用查询可用网络提供的功能,例如它们是 WLAN 网络、蜂窝网络还是按流量计费网络,或者它们是否提供特定网络功能。然后应用可以请求连接并对连接丢失或其他网络变化作出响应。Android 5.0 提供了新的多网络 API,允许您的应用动态扫

2018-01-12 15:19:11 2127

原创 快速网络的慢启动

如今的网络带宽在逐步的提高,延迟反而成了影响网络性能的重要原因。TCP 的多种机制导致有一个慢启动的过程,如何高效的使用 TCP 以及清楚其中的原因,我们很有必要学习一下TCP的启动过程,以及寻找可能的优化方案

2017-06-05 22:08:37 916

原创 FFmpeg 协议初步学习

FFmpeg 协议支持方面的初步学习,需要增加自定义协议支持可以学习一下这部分内容

2014-10-16 19:36:57 2616 1

原创 无线路由的桥接

卧室的Wifi信号一直比较弱,终于有一天忍不了,就将之前躺在抽屉里不用的路由拿出来,桥接起来,放在房间里用,Wifi信号瞬间就满格。总体来说设置起来还是比较简单,以前上课的时候没认真听课啊,导致设置的时候还是走了不少弯路的,在此记录一下。一、一个 极路由,一个 TP_LINK 无线路由,极路由作为主路由直接连接互联网,通过电话线拨号上网;TP_LINK 作为副路由,桥接到极路由上。

2014-10-03 15:25:17 1350

原创 Android 自带浏览器谷歌账号自动登录的实现

Google 的账号自动登录功能主要依靠x-auto-login这个http头部字段来触发的。X-auto-login是google私有的一个头部字段,在android自带浏览器和chrome中存在对这个http字段的处理。一、服务端在何时会返回X-Auto-Login 在PC端使用任何浏览器(IE,chrome)访问google账号登录页面时,服务端都会返回带有X-Auto-Lo

2013-09-26 14:02:36 4934 1

原创 Android 多线程及线程通信

AsyncTaskAsyncTask,它使创建需要与用户界面交互的长时间运行的任务变得更简单。相对来说AsyncTask更轻量级一些,适用于简单的异步处理,不需要借助线程和Handler即可实现。 AsyncTask是抽象类.AsyncTask定义了三种泛型类型 Params,Progress和Result。   Params 启动任务执行的输入参数,比如HTTP请求的URL。

2013-03-19 10:44:20 20011 4

原创 Android 开发环境搭建和基本的使用

一、JDK,CYGWIN首先安装JDK 和 Cygwin。如果之前在电脑上安装过JDK,并卸载过,就会遇见卸载不完全从而导致新的JDK安装不正确。这个时候就需要手动在注册表中删除JDK的信息,在windows上可以运行regedit.exe,然后在里面搜索JDK,SUN,JRE,等关键字,然后全部删除,即可完全删除JDK.Cygwin装起来貌似也比较费劲,可以在网上多参考一些文章。

2013-03-06 15:18:25 1444

原创 WebKit中为JS binding扩展DOM对象

DOM对象有三种形态一.寄生于现有对象,单实例从属于某个全局变量,访问时通过宿主对象完成。如window.object,也可以直接调用object.method。这个方法最为简单,按需分配,并且随着宿主对象释放。参考window的Navigator实现。1、添加CooperWebObject.h, CooperWebObject.cpp, CooperWebObject.idl文件

2013-03-01 18:39:40 1396

原创 JavaScript 笔记

1、浏览器一般会按照元素在页面中出现的先后顺序对它们依次进行解析。2、设置了defer="defer"属性的表明脚本在执行时不会影响页面的构造。也就是说,脚本会被延迟但整个页面解析完毕后再运行。HTML5规范要求脚本按照它们出现的先后顺序执行,而且要先于DOMContentLoaded事件执行。(但在现实中并不能保证这两点。因此最好只包含一个延迟脚本)3、设置了ansyc属性的脚本

2013-02-22 16:47:09 535

原创 c++ 的类型转换

http://www.cplusplus.com/doc/tutorial/typecasting/1 static_cast用法:static_cast ( expression )      该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类和子类之间指针或引用的转换。  进

2013-02-19 09:24:48 387

原创 HTTP 学习之状态码

HTTP状态码http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html http://zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81http://blog.csdn.net/cyq1984/article/details/7566849  状态码的补充1xx(临时响应

2013-01-23 18:02:27 482

原创 HTTP 学习之结构

HTTP Messagehttp://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2 HTTP头域http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.5 HTTP 通用头http://www.w3.org/Protocols/rfc2616/rfc2616-se

2013-01-23 18:01:29 493

原创 HTTP 学习之请求方法

请求方法1、OPTIONS:这个方法可使服务器传回该资源所支持的所有HTTP请求方法。用'*'来代替资源名称,向Web服务器发送OPTIONS请求,可以测试服务器功能是否正常运作。2、HEAD:与GET方法一样,都是向服务器发出指定资源的请求。只不过服务器将不传回资源的本文部份。它的好处在于,使用这个方法可以在不必传输全部内容的情况下,就可以获取其中“关于该资源的信息”(元信息或称元数据)

2013-01-23 14:29:30 2415

原创 HTML DOM 学习

1、HTML DOM 定义了访问和处理HTML文档的标准方法。2、可以通过JS来操作DOM,从而添加、移除、改变或重排页面上的项目。DOM 被分为不同的部分(核心、XML及HTML)和级别(DOM Level 1/2/3):Core DOM定义了一套标准的针对任何结构化文档的对象XML DOM定义了一套标准的针对 XML 文档的对象HTML DOM定义了一套标准

2013-01-22 10:11:24 561

原创 ping 代码

/*author: zhangzhijiantime: 2012-11-14creater sock must root ping localhost [-n count]*/#include #include #include #include #include #include #include #include #include #include #inc

2012-11-14 21:06:08 645

原创 某公司c/c++ 笔试题

int main(){ for(int i = 0; i < 2; i ++) { fork(); printf("-"); } return 0;}int main(){ for(int i = 0; i < 2; i ++) { fork(); printf("-\n");

2012-10-06 10:51:36 832

原创 旋转矩阵

/*请用最少的额外空间将一个M*N的矩阵旋转90度.*/#include #include using namespace std;const int N = 100;void rotate_left(int a[N][N], int m, int n){ int c_i = 0, c_j = 0; for(int i = 0; i < n; i++)

2012-10-04 15:39:08 447

原创 螺旋队列

/*螺旋队列 21 22..... 20 7 8 9 10 19 6 1 2 11 18 5 4 3 12 17 16 15 14 13使用O(n)的时间和O(1)的空间输出长度为n的螺旋队列设1的坐标为(0, 0);2的坐标为(1, 0);4的坐标为(0, 1)*/#include #include #include using name

2012-10-01 15:26:56 626

原创 重载,覆盖与隐藏

成员函数被重载的特征:(1)相同的范围(在同一个类中); (2)函数名字相同; (3)参数不同;(4)virtual 关键字可有可无。隐藏与重载的区别:(1)不同的范围(2)函数名相同(3)参数不同(4)virtual 关键字可有可无覆盖是指派生类函数覆盖基类函数,特征是: (1)不同的范围(分别位于派生类与基类); (2)函数名字相同;

2012-08-31 11:15:32 4299

原创 指针与数组的对比

C++/C 程序中,指针和数组在不少地方可以相互替换着用,让人产生一种错觉,以为两者是等价的。数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。指针可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用指针来操作动态内存。指针远比数组灵活,但也更危险。下面以字符串为例比较指针与

2012-08-30 15:34:47 698

原创 WIN7下使用 VS2005 编译 webkit

硬件加速和非加速在程序处理上的区别???既然要研究webkit,那必然是先要把源码下下来,编译一下。在 www.webkit.org 上有对编译步骤的主要介绍,建议先看一遍。 由于我是第一次编译开源的代码,很多东西不是太懂,所以中间出现很多问题。建议第一次像我这样编译webkit的童靴。第一,必要下载最新版本的源码,因为新版本的源码在编译过程中会遇见很多新错误,这样

2012-06-20 20:12:48 2349

原创 全排列

来源:http://blog.csdn.net/morewindows/article/details/7370155/*1.全排列就是从第一个数字起每个数分别与它后面的数字交换。2.去重的全排列就是从第一个数字起每个数分别与它后面非重复出现的数字交换。3.全排列的非递归就是由后向前找替换数和替换点,然后由后向前找第一个比替换数大的数与替换数交换, 最后颠倒替换点后

2012-03-21 22:53:47 621

原创 旋转数组的二分查找

来源: http://www.jobcoding.com/array/one-sorted-array/rotate_array/1. 问题描述已知有序数组a[N], 从中间某个位置k(k未知,k=-1表示整个数组有序)分开,然后将前后两部分互换,得到新的数组,在该新数组的查找元素x。如:a[]={1,2,5,7,9,10,15},从k=4分开,得到新数组a={9,10,1

2012-03-12 22:14:59 6359 1

原创 找出和为某个常数的数对

1. 问题描述已知大小分别为m,n的两个无序数组A,B和一个数常数c, 求满足A[i] + B[j] = c的所有A[i]和B[j]。【方案一】 这是最简单的方法,枚举A和B中所有元素对,看其和是否为c,如果是,则输出。【方案二】 首先,对两个数组中较大数组(不妨设为A)排序;然后,对于B中每个元素B[i],在A中二分查找c-B[i],如果找到,直接输出。

2012-03-11 15:09:01 611

原创 找出距离最近的三个点

本文章来源于 http://www.jobcoding.com/问题描述:给定三个数组A,B,C,从这三个数组中分别取一个元素a,b,c,使得|a-b|+|b-c|+|c-a| 最小。【方案一】该题最直接的方法是枚举,即枚举三个数组组成的所有三元组,然后求出|a-b|+|b-c|+|c-a| 最小值。【方案二】一般而言,见到绝对值号,首先想到的应是去

2012-03-11 14:42:40 3526

原创 模板的使用 二

#include #include #include #include #include "Stack.h"using namespace std;templateT const & max(T const & a, T const & b){//这是个有隐患的函数模板 return a > b ? a : b;}template void ref(T cons

2012-03-09 22:13:28 532

原创 函数模板的简单使用

#include using namespace std;inline int const & max(int const & a, int const & b){ cout << "inline int const & max\n"; return a > b ? a : b;}template inline T const & max(T const & a,

2012-03-08 22:48:29 513

原创 数组与二分查找

#include #include using namespace std;int binary_serach(int [], int , int );int lower_bound(int [], int , int );int upper_bound(int [], int , int );int find_miss_NO(int [], int);int main()

2012-03-08 22:34:48 2153

空空如也

空空如也

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

TA关注的人

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