资源简介
基于java的图书管理系统 , 控制台程序, 有一般图书管理系统的功能, 这个主要是数据结构的二叉树.用了二叉树作为存储结构. 里面有个名叫"演示"的文件夹,包含Jar包.直接可以运行看效果.

代码片段和文件信息
package book;
import java.util.List;
public class BinaryTree {
Node root;
//添加节点
private Node addNode(Node current bookinfo value) {
if (current == null) {
return new Node(value);
}
if (value.ID < current.data.ID) {
current.left = addNode(current.left value);
} else if (value.ID > current.data.ID) {
current.right = addNode(current.right value);
} else {
return current;
}
return current;
}
public void addNode(bookinfo value) {
root = addNode(root value);
}
//创建二叉树
public BinaryTree createBinaryTree(List bookinfos) {
BinaryTree bt = new BinaryTree();
for(bookinfo bk : bookinfos)
{
bt.addNode(bk);
}
return bt;
}
//查找一个节点
private boolean containNode(Node current bookinfo value) {
if (current == null) {
return false;
}
if (value.ID == current.data.ID) {
return true;
}
return value.ID < current.data.ID ? containNode(current.left value) : containNode(current.right value);
}
public boolean containNode(bookinfo value) {
return containNode(root value);
}
//按图书编号查找图书
private boolean findBianHao(Node current int value) {
if (current == null) {
return false;
}
if (value == current.data.ID) {
return true;
}
return value < current.data.ID ? findBianHao(current.left value) : findBianHao(current.right value);
}
public boolean findBianHao(int value) {
return findBianHao(root value);
}
//返回值是节点的查找
private object findNode(Node current int value) {
if (current == null) {
return null;
}
if (value == current.data.ID) {
return current.data;
}
return value < current.data.ID ? findNode(current.left value) : findNode(current.right value);
}
public object findNode(int value) {
return findNode(root value);
}
//按书名查找
public object findName(Node current String name) {
int i = findNameOrder(current name);
if(i == -1) return null;
else {
object obj = findNode(current i);
return obj;
}
}
//按书名查找时用到的遍历
public int findNameOrder(Node root String name) {
if (root != null) {
if(root.data.SM.equals(name))
{
return root.data.ID;
}
findNameOrder(root.left name);
findNameOrder(root.right name);
}
return -1; //没有查到书名的书
}
//按作者查找
public object findUser(Node current String user) {
int i = findUserOrder(current user);
if(i == -1) return null;
else {
object obj = findNod
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2020-02-28 19:20 图书管理二叉树\.classpath
文件 380 2020-02-28 19:20 图书管理二叉树\.project
文件 4679 2020-02-29 00:11 图书管理二叉树\bin\book\BinaryTree.class
文件 8236 2020-02-29 01:34 图书管理二叉树\bin\book\Book.class
文件 2413 2020-02-28 22:50 图书管理二叉树\bin\book\bookinfo.class
文件 493 2020-02-28 20:48 图书管理二叉树\bin\book\Node.class
文件 5214 2020-02-29 00:11 图书管理二叉树\src\book\BinaryTree.java
文件 8327 2020-02-29 01:34 图书管理二叉树\src\book\Book.java
文件 1307 2020-02-28 22:50 图书管理二叉树\src\book\bookinfo.java
文件 251 2020-02-28 20:48 图书管理二叉树\src\book\Node.java
文件 101946 2020-02-28 20:33 图书管理二叉树\图书信息.csv
文件 101947 2020-02-28 20:34 图书管理二叉树\演示\book.csv
文件 8279 2020-02-29 01:34 图书管理二叉树\演示\daochu.jar
文件 28 2020-02-29 01:32 图书管理二叉树\演示\run.bat
目录 0 2020-02-28 20:46 图书管理二叉树\bin\book
目录 0 2020-02-28 20:46 图书管理二叉树\src\book
目录 0 2020-02-28 19:21 图书管理二叉树\bin
目录 0 2020-02-28 19:21 图书管理二叉树\src
目录 0 2020-02-29 01:30 图书管理二叉树\演示
目录 0 2020-02-29 01:30 图书管理二叉树
文件 101947 2020-02-28 20:34 图书管理二叉树\book.csv
----------- --------- ---------- ----- ----
345679 21
相关资源
- java串口通信全套完整代码-导入eclip
- JNA所需要的jar包
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- utgard用到的jar包
- java代码编写将excel数据导入到mysql数据
- 实现一个图书管理系统
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- commons-beanutils-1.8.3.jar
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- ehcache-core-2.5.1.jar
- android-support-v4.jar已打包进去源代码
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
评论
共有 条评论