資源簡介
基于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.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?????}
????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?????}
????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?????}
????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
評論
共有 條評論