java

Java实现二叉查找树转为排序的双向链表

1.把二元查找树转变成排序的双向链表 题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。 要求不能创建任何新的结点,只调整指针的指向。 10 /   \ 6     14 / \   /  \ 4   8 12 16 转换成双向链表 4=6=8=10=12=14=16。 首先我们定义的二元查找树节点的数据结构如下: struct BSTreeNode { int m_nValue; // value of node BSTreeNode *m_

jdbc

JDBC事务处理

在JDBC中,事务操作默认是自动提交。也就是说,一条对数据库的更新表达式代表一项事务操作。操作成功后,系统将自动调用commit()来提交,否则将调用rollback()来回退。 可以通过调用setAutoCommit(false)来禁止自动提交。之后就可以把多个数据库操作的表达式作为一个事务,在操作完成后调用commit()来进行整体提交。 倘若其中一个表达式操作失败,都不会执行到commit(),并且将产生响应的异常。此时就可以在异常捕获时调用rollback()进行回退。 这样做可以保持多次更新操作后,相关数据的一致性。 /* * 2014年12月30日16:24:04 */ Connection conn; Statement stat; ResultSet rs; try { Class.

java

Java中int和Integer的区别及如何相互转换

两周前参加了一场比试,笔试中有int和Integer相互转换的题,自己答的不是很有把握,不过没有及时查阅资料,后来就忘记了。 今天看笔试题的时候看到int和Integer的区别突然想到之前的那道题,查了下资料,现在把它记录下来。 Java中int和Integer的区别 int是Java提供的8种原始数据类型之一。Java为每个原始数据类型提供了封装类,Integer是Java为int提供的封装类。 int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况。例如,要想表达出没有参加考试和考试成绩为0的区别,则只能用Integer。 另外,Integer提供了多个与整数相关的操作方法,例如,将一个字符串转换成整数Integer.parseInt(String str),Integer中还定义了表示整数的最大值和最小值的常量。 int和Integer的互相转换 1.int转换为Integer 1) int a