自定义博客皮肤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)
  • 资源 (7)
  • 收藏
  • 关注

原创 面试算法:计算堆栈当前元素的最大值

堆栈的常用操作有, pop 弹出堆栈顶部的元素;push 向堆栈压入一个元素;peek 获得堆栈顶部的元素值,但不弹出堆栈。现在要去你增加一个操作max, 它的作用是返回堆栈当前所有元素中值最大的那个元素

2017-02-24 10:11:14 2325

原创 java开发C编译器:结构体的解析和执行

更详细的讲解和代码调试演示过程,请参看视频 用java开发C语言编译器结构体是C语言中,最为复杂的原生数据结构,它把多种原生结构结合在一起,形成一个有特点含义的数据结构,要实现一个完整的C语言编译器或解释器,就必须要拥有对结构体的解析能力,本节,我们在当前解释器的基础上,增加结构体的解释执行能力,完成本节后,我们的解释器可以解析执行下面代码:void main() {struct TAG {in

2017-02-23 11:02:36 1436

原创 java开发系统内核:caps 按键处理

上一节,我们成功实现了对shift按键的处理,这一节,我们看看如何处理caps 按键,当该键按下时,输入系统的字符在大小写间切换。由于我们系统启动后,默认输入是大写字符,完成本节后,我们把系统的默认字符改成小写,按下caps键,系统字符自动切换成大写。

2017-02-21 10:19:44 916

原创 面试算法:在整形数组中构建元素之和能整除数组长度的子集

假设A是一个整数数组,长度为n,数组中的元素可能是重复的。设计一个算法,找到一系列下标的集合I = {i(0), i(1), i(2)….i(n)}. 使得(A[i(0)] + A[i(1)] + … A[i(n)] ) mod n = 0.请给出求得集合I的算法

2017-02-16 10:51:18 701

原创 面试算法:利用堆栈计算逆向波兰表达式

给定一个四则运算表达式的字符串,如果该表达式满足逆向波兰表达式,那么该字符串要满足以下条件:1: 该表达式含有一个数字字符或一串数字字符。2:它拥有给定格式,如”A, B, 。“,其中A,B是逆向波兰表达式,句号。表示的是四种运算符"+,-,*,/"其中之一。例如字符串“3,4,*,1,2,+,+”就满足逆向波兰表达式,该表达式的值为:3 * 4 + (1+2) = 15.

2017-02-15 11:11:32 1211

原创 java开发C语言解释器:实现指针直接读写

上一节,我们实现了内存的数组化访问,本节的目的是实现通过指针直接对内存进行读写,完成本节后,我们的解释器将能正确的解释执行如下语句:*(p+1) = 1;

2017-02-14 12:05:41 722

原创 java开发系统内核:实现shift按键效果

前几节,我们花费不少精力在键盘响应的处理之上,到目前为止,我们的内核能够准确的将按键字符合理的显示在指定窗口上。但目前还有一些遗憾,就是当前内核对shift 键的按下不做反应。按理,当shift键按下后,再按数字键1,那么显示的字符应该是"!"而不是“1”,本节我们要处理的就是响应shift键的点击处理

2017-02-13 09:23:49 799

原创 java开发C解释器:实现动态内存的分配和读写

C语言有一个强大的功能,就是通过指针直接操作内存,正是因为C语言含有直接读写内存的机制,使得C语言在系统开发,底层开发等方面,占据了难以撼动的地位,同时也正是这个原因,C语言开发的程序常常出现内存泄漏和野指针等及其令人头疼的问题。本节,我们为解释器添加动态内存的分配和读写机制,完成本节内容后,解释器能解释执行有关动态内存的分配和读写的C代码

2017-02-02 12:10:55 1272

一个java实现的简易编译器

这是一个用java实现的简易的编译器,他能将一个具有加法和乘法的算术表达式编译成类汇编语言,这是我博文对应的代码,具体请参看我的博文: http://blog.csdn.net/tyler_download/article/details/50668983 例如输入 1+2*3+4; end end是必须的,表示输入结束,然后程序输出: t0 = 1 t1 = 2 t2 = 3 t1 *= t2 t0 += t1 t1 = 4 t0 += t1

2016-02-18

一个android 文本比对app的实现代码

这是一个android版的beyond comparer, 它的功能是找出两个文本的最大共同子串,其算法思想是LCS, 但我利用Hirschberg 的动态规划算法将存储复杂度由O(n^2)改为O(n), 具体详情请参看我的博文: http://blog.csdn.net/tyler_download/article/details/49820515

2015-11-16

Android 4.4 App Development Essential

亚马逊上五星级的android开发入门书,它将android开发的概念,流程娓娓道来,详细讲解了开发环境的搭建,调试,并逐步讲解开发的各个知识点,并提供动手实践的实例和程序,极大地降低了学习曲线,是想进入android移动开发的绝佳入门资料

2014-11-21

空空如也

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

TA关注的人

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