- 浏览: 55634 次
- 性别:
- 来自: 北京
-
最新评论
文章列表
1 Write a function to find the Kth node form the last node of a singly-linked list, and analze the time and space complexity of your funciton.
The input to the function is a pointer or reference to the head of the list.
The output is a pointer or reference to the Kth node from the last node.
用两 ...
“火柴棍式”程序员面试题
- 博客分类:
- 面试笔试题
“火柴棍式”程序员面试题
2011年03月21日 星期一 18:00
有时候,有些面试题是很是无厘头,这不,又有一个,还记得小时候玩的的“火柴棍游戏”吗,就是移动一根火柴棍改变一个图或字的游戏。程序面试居然也可以这么玩,看看下面这个火柴棍式的程序面试题吧。
下面是一个C程序,其想要输出20个减号,不过,粗心的程序员把代码写错了,你需要把下面的代码修改正确,不过,你只能增加或是修改其中的一个字符,请你给出三种答案。
int n = 20;for(int i = 0; i < n; i--){ printf("-");}
1. 判断回文
public class Huiwen {
static boolean IsHuiwen(String org){
StringBuffer strBf = new StringBuffer(org);
StringBuffer strBfv = strBf.reverse();
System.out.println("Org:"+org);
System.out.println("OrgRe:"+strBfv);
return org. ...
程序:输入:一行字符串,输出:最长的回文字符的长度以及把它们给输出来。
如: 输入:1596156432111234
输出:6 432111234
回文的性质
首先先把题目撇开,单说回文数的性质,如abcba是一个长度为5的回文数,那它有什么性质呢?
回文数顾名思义,就是从左念和从右念是相同的,也可以说从左遍历和从右遍历是相同的,这些都是废话。因为它是回文数所以可以同时从左和右开始遍历,各
个字符都是相同的。
其实上面那些性质也没什么用,算是铺垫吧,接下来的才是重点,那怎么样去构成一个回文数呢?就用 ...
XP系统的环境变量都是保存在注册表里的,所以如果想要通过命令行或者是批处理来修改环境变量,就需要知道它保存在注册表的哪个地方。
PS.
CMD命令可以通过set直接修改环境变量,但那只是一次性的,系统重启后就无效了,这也是为什么要直接修改注册表的原因。
系统环境变量空间的注册表项保存位置为:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
当前用户环境变量空间的注册表项保存位置为:
HKEY_CURRENT_USER\Environment
有了这个东西,我们就可以利 ...
Java的GC工作原理
- 博客分类:
- JAVA
GC的基本原理
Java的内存管理实际上就是对象的管理,其中包括对象的分配和释 放。
对于程序员来说,分配对象使用new关键字;释放对象时,只要将对象所有引用赋值为null,让程序不能够再访问到这个对象,我们 称该对象为"不可达的".GC将负责回收所有"不可达"对象的内存空间。
对于GC来说,当程序员创建对象时,GC就开始监控这个对象的
地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象(详见参考资料1)。通过这种方式确定哪些对象是"可达的",
哪些对象是&quo ...
我收藏的短线操作技巧
- 博客分类:
- 杂谈
一、选股时间:30分钟K线图,把30分钟的移动平均线参数设定为:13、77、99 二、买入方法: 1。脚掌买小法:13线出现高低脚形态,以左脚低右脚高为有效图形,作右脚时最好无量,K线一小阴小阳方式运行在13线上,同时MA ...
strcpy和memcpy都是用于从一块内存复制一段连续的数据到另一块内存,区别是终结标识不同。strcpy(a, b)从b复制内容到a,然后从b+1复制内容到a+1,依次类推,知道b+i的内容是'\0'。要小心的是1:确保b是以'\0'结尾的字符串;2:确保a开始有足够的可用内存。通常用strncpy(a, b, c)会好一些,这时复制的数据最长不超过c字节。memcpy(a, b, c)从b开始复制c字节内容到a。相比strcpy,memcpy是确定复制c个字节的。所以只要保证b开始有c字节有效数据,a开始有c字节内存空间就行。要小心的是:memcpy对于重叠内存的复制支持不太好。重叠内存是 ...
Linux 学习笔记
- 博客分类:
- Linux
1 硬盘只能分4个区,因为硬盘分区表只能记录4条记录。硬盘有主分区和扩展分区,扩展分区里面又可以分逻辑分区
2 在Linux看来,任何设备都是文件,文件分两种,一种是字符形式,一种是二进制形式。文件的命名是固定的,取决于文件的位置。分区名的前两个字母表示分区所在的设备类型,通常是hd(IDE磁盘)或sd(SCSI磁盘)。后面的一位字母表示分区所在的设备。例如,/dev/hda(第一个IDE磁盘)或/dev/sdb(第二个SCSI磁盘)。最后的数字代表分区。前四个分区(主分区或扩展分区)是用数字从1到4记录。逻辑分区从5开始。
3 mount 挂载设备到文件目录。 mount 设备名 目录。u ...
String 转 Date
- 博客分类:
- JAVA
DateFormat format = new SimpleDateFormat("yyyy-HH-dd HH:mm:ss");
Date closedDate = format.parse(Your Date String);
架构蓝图--软件架构 "4+1" 视图模型
- 博客分类:
- 软件架构
https://www.ibm.com/developerworks/cn/rational/r-4p1-view/
事务(Transaction)是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转账工作:从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。所以,应该把它们看成一个事务。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。
针对上面的描述可以看出,事务的提出主要是为了解决并发情况下保持数据一致性的问题。
事务具有以下4个基本特征。
● Atomic(原子性):事务中包含的操作被看做一个逻辑单元,这个逻辑单元中的操作要么全部成功,要么全部失败。 ...
理解数据库范式
系统是短暂的
数据是永恒的
数 据库范式是数据库设计中必不可少的知识,没有对范式的理解,就无法设计出高效率、优雅的数据库。甚至设计出错误的数据库。而想要理解并掌握范式却并不是那 么容易。教科书中一般以关系代数的方法来解释数据库范式。这样做虽然能够十分准确的表达数据库范式,但比较抽象,不太直观,不便于理解,更难以记忆。
本 文用较为直白的语言介绍范式,旨在便于理解和记忆,这样做可能会出现一些不精确的表述。但对于初学者应该是个不错的入门。我写下这些的目的主要是为了加强 记忆,其实我也比较菜,我希望当我对一些概念生疏的时候,回过头来看看自己写的笔记,可以快速地进入状态。如果 ...
缓冲区溢出漏洞入门介绍
- 博客分类:
- C/C++
一、引言 不管你是否相信,几十年来,缓冲区溢出一直引起许多严重的安全性问题。甚至毫不夸张的说,当前网络种种安全问题至少有50%源自缓冲区溢出的问题。远的不说,一个冲击波病毒已经令人谈溢出色变了 ...
1、 对象的初始化
(1) 非静态对象的初始化
在创建对象时,对象所在类的所有数据成员会首先进行初始化。基本类型:int型,初始化为0。如果为对象:这些对象会按顺序初始化。
※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。构造方法的作用就是初始化。
(2) 静态对象的初始化
程序中主类的静态变量会在main方法执行前初始化。不仅第一次创建对象时,类中的所有静态变量都初始化,并且第一次访问某类(注意此时未创建此类对象)的静态对象时,所有的静态变量也要按它们在类中的顺序初始化。
2、 继承时,对象的初始化过程
(1) ...