摘要: void ReplaceBlank(char string[],int length){if(string == NULL || length length) retrun; //考虑内存不够int indexOfOriginal = originalLength;int indexOfNew =... 阅读全文
posted @ 2015-09-26 23:18 Uncle_Nucky 阅读(125) 评论(0) 推荐(0)
摘要: 基本思路:从两头往中间做字符交换。字符串最后一个字符是'/0',表示结束,没有实际意义,可以将它当作中间变量,等处理完成后,再将最后一个字符置'/0'即可***********************************************************************vo... 阅读全文
posted @ 2015-09-26 23:18 Uncle_Nucky 阅读(315) 评论(0) 推荐(0)
摘要: 从Trie树(字典树)谈到后缀树作者:July、yansha。出处:http://blog.csdn.net/v_JULY_v。引言常关注本blog的读者朋友想必看过此篇文章:从B树、B+树、B*树谈到R树,这次,咱们来讲另外两种树:Tire树与后缀树。不过,在此之前,先来看两个问题。第一个问题: ... 阅读全文
posted @ 2015-09-26 23:17 Uncle_Nucky 阅读(704) 评论(0) 推荐(0)
摘要: 阿里巴巴笔试题:给定一段产品的英文描述,包含M个英文字母,每个英文单词以空格分隔,无其他标点符号;再给定N个英文关键词,请说明思路并变成实现方法。String extractSummary(String description , String[] keyWords)目标:找出此产品描述中包含N个关... 阅读全文
posted @ 2015-09-26 23:17 Uncle_Nucky 阅读(262) 评论(0) 推荐(0)
摘要: 【最优解法】我们假设字母都由大写字母组成……,我们先对小字符串预处理,可以得到B 里包含哪些字符,这里可以用位运算,或者用bool 数组。位运算简单些,用一个int 中的26bit 表示其是否在B 中出现即可。bool AcontainsB(char *A,char *B) {int have = ... 阅读全文
posted @ 2015-09-26 23:17 Uncle_Nucky 阅读(124) 评论(0) 推荐(0)
摘要: 《编程之美》寻找Tango水王(100题第74题)1.hash表:查找时间复杂度O(1) - 事先预处理时间复杂度O(N) 需要O(N)的开销空间,且要设计hash函数2.最佳方法:每次删除两个不同的数3.保存两个值:一个是数组中数字,一个是次数 遍历,相同则次数加1,不同则次数减1 如果次数... 阅读全文
posted @ 2015-09-26 23:16 Uncle_Nucky 阅读(124) 评论(0) 推荐(0)
摘要: ============================================================================================1、length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String... 阅读全文
posted @ 2015-09-26 23:15 Uncle_Nucky 阅读(276) 评论(0) 推荐(0)
摘要: (连续) - 阿里笔试【分析+编码】题目描述:给定一个query和一个text,均由小写字母组成。要求在text中找出以同样的顺序连续出现在query中的最长连续字母序列的长度。例如,query为“acbac”,text为“acaccbabb”,那么text中的“cba”为最长的连续出现在query... 阅读全文
posted @ 2015-09-26 23:15 Uncle_Nucky 阅读(219) 评论(0) 推荐(0)
摘要: 【字符串相似度】给定一个源串和目标串,能够对源串进行如下操作:1.在给定位置上插入一个字符2.替换任意字符3.删除任意字符要求写一个程序,返回最少操作数,使得对源串操作后等于目标串。 阅读全文
posted @ 2015-09-26 23:14 Uncle_Nucky 阅读(112) 评论(0) 推荐(0)
摘要: 题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。分析:此题看起来,比较简单,每扫描到一个字符,我们把在之前得到的数字乘以10再加上当前字符表示的数字。这个思路用循环不难实现。然其背后却隐藏着不少陷阱,正如zhedahht所说,有以下几点需要你注... 阅读全文
posted @ 2015-09-26 23:14 Uncle_Nucky 阅读(228) 评论(0) 推荐(0)
摘要: 方法:动态规划 《算法导论》P208最优子结构 +重叠子问题设xi,yi,为前i个数(前缀)设c[i,j]为xi,yi的LCS的长度c[i,j] = 0 (i ==0 || j == 0)c[i,j] = a[i-1,j-1] + 1 (i,j>0 &&xi=yi)c[i,j] = max(c[i,... 阅读全文
posted @ 2015-09-26 23:13 Uncle_Nucky 阅读(147) 评论(0) 推荐(0)
摘要: 【1.最长公共子串】使用矩阵标记【2.最大子串和】连续子序列最大和【3.KMP算法】从字符串中,查找包含给定字符集合的最短子串统计100万个不等长的字符串中各字符串的次数在一个字符串中找到第一个只出现一次的字符后缀数组的最长公共前缀 阅读全文
posted @ 2015-09-26 23:13 Uncle_Nucky 阅读(142) 评论(0) 推荐(0)
摘要: 给定由n个整数(可能为负整数)组成的序列A1,A2,A3,...,An,求该序列的连续子段的和的最大值。当所有整数均为负整数时定义其最大子段和为0#include#defineMAXSIZE100usingnamespacestd;intMaxSum(int[],int);intmain(void)... 阅读全文
posted @ 2015-09-26 23:12 Uncle_Nucky 阅读(181) 评论(0) 推荐(0)
摘要: -2.5 4 0 3 0.5 8 -1Ans:(3,0.5,8)templateComparable maxprod(constvector& v){int i;Comparable maxProduct =1;Comparable minProduct =1;Comparable maxCurre... 阅读全文
posted @ 2015-09-26 23:12 Uncle_Nucky 阅读(155) 评论(0) 推荐(0)
摘要: 编写strstr,strcpy,strpbrk的函数库函数,细节的把握,编程能力扎实过硬==========================================================================================================... 阅读全文
posted @ 2015-09-26 23:11 Uncle_Nucky 阅读(233) 评论(0) 推荐(0)
摘要: 【原因】(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。【四个必要条件】(1) 互斥条件:一个资源每次只能... 阅读全文
posted @ 2015-09-26 23:08 Uncle_Nucky 阅读(168) 评论(0) 推荐(0)
摘要: 【/\{\{(.+?)\}\}/g】最前面的“/”与最后面的“/”是分隔符,表示正则表达式的开始与结束。最后的“g”标志表示正则表达式使用的global(全局)的状态。使用 global 标志表明在被查找的字符串中搜索操作将查找所有符合的项,而不仅仅是第一个。这也被称为全局匹配。【相关的标志还有i(... 阅读全文
posted @ 2015-09-26 23:06 Uncle_Nucky 阅读(240) 评论(0) 推荐(0)
摘要: 【interceptor:实现原理&源码剖析。invocation.invoke()】【invoke()的递归调用:AOP实现原理】【http://blog.csdn.net/kiss_vicente/article/details/7597700】拦截器(interceptor)是Struts2最... 阅读全文
posted @ 2015-09-26 23:04 Uncle_Nucky 阅读(477) 评论(0) 推荐(0)
摘要: 【http://qidaoxp.iteye.com/blog/503015】下面开始讲一下主菜ActionProxy了.在这之前最好先去了解一下动态Proxy的基本知识.ActionProxy是Action的一个代理类,也就是说Action的调用是通过ActionProxy实现的,其实就是调用了Ac... 阅读全文
posted @ 2015-09-26 23:03 Uncle_Nucky 阅读(140) 评论(0) 推荐(0)
摘要: 控制器(StrutsPrepareAndExecuteFilter或FilterDispatcher)==========================================================================《Struts2体系结构图以及详解》【http:/... 阅读全文
posted @ 2015-09-26 23:02 Uncle_Nucky 阅读(2101) 评论(0) 推荐(1)
摘要: StrutsPrepareAndExecuteFilter【http://www.tuicool.com/articles/NVNbYn】struts2和struts1的一个重要区别就是它进行了Action类和Servlet的解耦。又提供了获取Servlet API的其它通道,就是ActionCon... 阅读全文
posted @ 2015-09-26 22:59 Uncle_Nucky 阅读(409) 评论(0) 推荐(1)
摘要: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter前身是:org.apache.struts2.dispatcher.FilterDispatcher请求被web.xml中定义的过滤器拦截。3层过滤器处理:Act... 阅读全文
posted @ 2015-09-26 22:58 Uncle_Nucky 阅读(189) 评论(0) 推荐(0)
摘要: Struts2的Action可以不需实现任何接口或继承任何类,就是一个包含了execute()方法的POJO。继承com.opensymphony.xwork2.ActionSupport类,并重载execute()方法。struts2中action是多例的,即一个session产生一个action... 阅读全文
posted @ 2015-09-26 22:57 Uncle_Nucky 阅读(395) 评论(0) 推荐(0)
摘要: 《JSP基础教程》(清华版)动态网页编程语言,Web开发技术第1章JSP简介基础:Java语言基础,HTML语言知识。除了普通的HTML标记符外,还使用标记符号加入Java代码。JSP运行原理首先将JSP页面文件转译成一个Java文件,然后再编译生成字节码文件,最后通过执行这个字节码文件响应客户。 ... 阅读全文
posted @ 2015-09-26 22:56 Uncle_Nucky 阅读(424) 评论(0) 推荐(0)
摘要: 《JSP/Servlet学习笔记》《JSP&Servlet学习笔记》第2版Chapter1 Web应用程序简介学习目标:1.1 Web应用程序基础知识 HTML,HTTP,URL和文字编码。HTMLHTML基础知识:http://www.w3schools.com/html/default.aspH... 阅读全文
posted @ 2015-09-26 22:55 Uncle_Nucky 阅读(3384) 评论(0) 推荐(0)
摘要: 【Struts2】 Action实现。 interceptor实现。 Filter工作原理。使用 拦截器来处理请求。业务逻辑控制器与 Servlet API分离。=====================================================================... 阅读全文
posted @ 2015-09-26 22:54 Uncle_Nucky 阅读(267) 评论(0) 推荐(0)
摘要: 链表两路归并#include#includeusingnamespacestd;structnode{intval;node *next;node(intv){val=v;next=NULL;}};node *merge(node*list1 , node *list2){assert(list1!... 阅读全文
posted @ 2015-09-26 22:52 Uncle_Nucky 阅读(974) 评论(0) 推荐(0)
摘要: 判断无向图中是否存在回路(环)的算法描述如果存在回路,则必存在一个子图,是一个环路。环路中所有顶点的度>=2。算法: 第一步:删除所有度=n,则根据图论知识可直接判断存在环路。 (证明:如果没有环路,则该图必然是k棵树 k>=1。根据树的性质,边的数目m = n-k。k>=1,所以:mv,必有v->... 阅读全文
posted @ 2015-09-26 22:50 Uncle_Nucky 阅读(2818) 评论(0) 推荐(0)
摘要: #include#includeusing namespace std;inline int Parent(int i){return i>>1;}inline int Left(int i){return iA[j]) max = l;else max = i;if(rA[max]) max = ... 阅读全文
posted @ 2015-09-26 22:49 Uncle_Nucky 阅读(126) 评论(0) 推荐(0)
摘要: 考虑单链表少于K个元素的情况。structnode{intkey;node* next;};typedefnode* List;intfindLastKthElement(List list,intk){//遍历整个链表,//声明一个临时指针指向头节点//当遍历过元素个数小于K的时候,继续遍历//当... 阅读全文
posted @ 2015-09-26 22:49 Uncle_Nucky 阅读(204) 评论(0) 推荐(0)
摘要: void BubbleSort(int a[],int n){int i,j;for(i=0;ia[j]) Swap(a[j-1],a[j]);} 阅读全文
posted @ 2015-09-26 22:48 Uncle_Nucky 阅读(106) 评论(0) 推荐(0)
摘要: O(nlog2n) 附加空间O(n)#include#define true 1#define false 0void mergearray(int a[],int first,int mid,int last,int temp[]){int i = first,j = mid+1;int m = ... 阅读全文
posted @ 2015-09-26 22:48 Uncle_Nucky 阅读(177) 评论(0) 推荐(0)
摘要: 插入排序的改进。递减增量排序算法。步长为1时就是插入排序。#includevoid ShellSort(int a[],int n){int i,j,k,temp,gap;int gaps[]={1,5,13,43,113,297,815,1989,4711,11969,27901,84801,21... 阅读全文
posted @ 2015-09-26 22:47 Uncle_Nucky 阅读(123) 评论(0) 推荐(0)
摘要: node *reverse(node *head){ node *p, *q, *t; p = head->next;//指向第一个节点 t = q = p->next;//指向第二个节点,如果有的话。没有则为空。 p->next = NULL;//第一个节点逆置之后,变成最后一个节点,它的next... 阅读全文
posted @ 2015-09-26 22:43 Uncle_Nucky 阅读(102) 评论(0) 推荐(0)
摘要: #include#include#include=====================================================void Swap(int& a,int& b){ if(a!=b){ a^=b;b^=a;a^=b; }}==============... 阅读全文
posted @ 2015-09-26 22:42 Uncle_Nucky 阅读(209) 评论(0) 推荐(0)
摘要: int binary_search(int array[], int n, intvalue){ int left=0,right=n-1; while(left>1); if(array[middle]>value) right = middle - 1; else if(arr... 阅读全文
posted @ 2015-09-26 22:42 Uncle_Nucky 阅读(108) 评论(0) 推荐(0)
摘要: 不稳定排序:选择、希尔、堆排、快排插入排序n2 快速排序nlog2n 不稳 希尔排序 n1.3 不稳选择排序n2不稳 堆排序nlog2n 不稳 基数排序O(d(n+1))冒泡排序n2 归并排序nlog2n========================... 阅读全文
posted @ 2015-09-26 22:40 Uncle_Nucky 阅读(104) 评论(0) 推荐(0)
摘要: 总复习二分搜索(写代码)(查找算法)快速排序,归并排序,堆排序,希尔排序等等(各种排序算法特性比较)赫夫曼Huffman编码算法计算器栈最短路径:图算法树的遍历(二叉搜索树)AVL树,红黑树,B树散列表(Hash表)链表,栈,队列的实现。AVL树数据库:B树文件压缩:Huffman算法简单的基础的二... 阅读全文
posted @ 2015-09-26 22:39 Uncle_Nucky 阅读(183) 评论(0) 推荐(0)
摘要: 【tcp socket的发送与接收缓冲区】发送缓冲队列struct sk_buff【TCP接收/发送滑动窗口与内核接收/发送缓冲区之间的关系】滑动窗口的大小与套接字缓存区会在一定程度上影响并发连接的数据,每个TCP连接都会为维护TCP滑动窗口而消耗内存,这个窗口会根据服务器的处理速度收缩或扩张。整个... 阅读全文
posted @ 2015-09-26 22:38 Uncle_Nucky 阅读(5581) 评论(0) 推荐(3)
摘要: HTTP报文分为请求报文(request message)与响应报文(response message)。一、报文的组成部分 一个HTTP报文由3部分组成,分别是: (1)、起始行(start line) (2)、首部(header) (3)、主体(body) 示例:HTTP/1.0200... 阅读全文
posted @ 2015-09-26 22:37 Uncle_Nucky 阅读(215) 评论(0) 推荐(0)
摘要: 提供面向连接的、可靠的字节流服务。在彼此交换数据之前先建立一个TCP连接。【保证可靠性的方式】报文段长度:数据被分割成TCP认为最适合发送的数据块。自适应的超时及重传策略。收到数据后发送确认。保持首部和数据的检验和。如果必要,TCP对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。TCP... 阅读全文
posted @ 2015-09-26 22:35 Uncle_Nucky 阅读(117) 评论(0) 推荐(0)
摘要: 【TCP的那些事儿】TCP是个巨复杂的协议,而且不断地改进中。所以学习TCP本身是个比较痛苦的过程,但这个过程却能让人有很多收获。希望这篇快餐科普性文章能在快餐文化下让你对TCP有了解,并可以促发你对基础知识的兴趣和学习欲望。http://coolshell.cn/articles/11564.ht... 阅读全文
posted @ 2015-09-26 22:34 Uncle_Nucky 阅读(196) 评论(0) 推荐(0)
摘要: 【HTTPS是如何保证连接安全:每位Web开发者都应知道的】http://blog.jobbole.com/45530/【服务器与客户端之间如何建立安全的连接?】HTTP协议默认不使用加密协议,都是由于这些原因:加密消耗了很多计算资源。加密占用了更多的传输带宽。加密后缓存机制会失效。传输层安全协议(... 阅读全文
posted @ 2015-09-26 22:32 Uncle_Nucky 阅读(227) 评论(0) 推荐(0)
摘要: 1.基于连接与无连接;2.对系统资源的要求(TCP较多,UDP少);3.UDP程序结构较简单;4.流模式与数据报模式 ;5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。 阅读全文
posted @ 2015-09-26 22:30 Uncle_Nucky 阅读(121) 评论(0) 推荐(0)
摘要: GET/HTTP/1.1Host: www.baidu.comUser-Agent:Mozilla/5.0(Windows;U;WindowsNT5.1;en-US;rv:1.7.6)Gecko/20050225Firefox/1.0.1Connection:Keep-AlivePOST/HTTP/... 阅读全文
posted @ 2015-09-26 22:29 Uncle_Nucky 阅读(165) 评论(0) 推荐(0)
摘要: TCP状态转换TCP报文设计TCP粘包问题TCP拥塞控制,滑动窗口机制HTTP报文内容recv/send函数IP选路RIP和OSPF的区别:跳数,支持子网,收敛速度,考虑网络延迟和链路开销,区域的概念。=================================================... 阅读全文
posted @ 2015-09-26 22:28 Uncle_Nucky 阅读(248) 评论(0) 推荐(0)
摘要: HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。经常还访问某个网页时会遇到,如503,404等错误。一些常见的状态码为:200 -服务器成功返回网页404 -请求的网页不存在503 -服务不可用最常用的状态码有:◆200 (OK): 找到了该资源... 阅读全文
posted @ 2015-09-26 22:27 Uncle_Nucky 阅读(154) 评论(0) 推荐(0)