- 浏览: 441957 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
sunwang810812:
万分感谢中!!!!!这么多年终于看到一个可运行可解决的方案!! ...
POI 后台生成Excel,在前台显示进度 -
zzb7728317:
LZ正解
Spring Jackson AjaxFileUpload 没有执行回调函数的解决办法 -
sleeper_qp:
lz是在源码上修改的么? 源码的话你重新编译一遍了么? 可 ...
由nutch readseg -dump 中文编码乱码想到的…… -
shenjian430:
请问你改好的程序在写在哪了?
由nutch readseg -dump 中文编码乱码想到的…… -
yinxusen:
It seems to be the bug occur in ...
Mahout Local模式 执行example的注意点
1、用数组实现Stack:
2、用数组实现Queue:
3、递归实现BinaryTree:
public class MyStack { private int maxSize; private Integer[] array; private int top; public MyStack(int maxSize) { this.maxSize = maxSize; this.array = new Integer[maxSize]; this.top = -1; } public void push(int item) { if (isFull()) { System.out.println("Stack is full"); } else { array[++top] = item; } } public Integer peek() { if (isEmpty()) { System.out.println("Stack is empty"); return null; } else { return array[top]; } } public Integer pop() { if (isEmpty()) { System.out.println("Stack is empty"); return null; } else { return array[top--]; } } public boolean isEmpty() { return top == -1; } public boolean isFull() { return top == maxSize - 1; } public static void main(String[] args) { MyStack myStack = new MyStack(10); myStack.push(1); myStack.push(3); System.out.println("peek: " + myStack.peek()); myStack.push(5); System.out.println("pop: " + myStack.pop()); System.out.println("peek: " + myStack.peek()); myStack.push(6); System.out.println("peek: " + myStack.peek()); System.out.println("pop: " + myStack.pop()); System.out.println("pop: " + myStack.pop()); System.out.println("pop: " + myStack.pop()); System.out.println("pop: " + myStack.pop()); } }
2、用数组实现Queue:
public class MyQueue { private int maxSize; private Integer[] array; private int front; private int rear; private int itemCount; public MyQueue(int maxSize) { this.maxSize = maxSize; this.array = new Integer[maxSize]; this.front = 0; this.rear = -1; this.itemCount = 0; } public void insert(int item) { if (isFull()) { System.out.println("Queue is full"); } else { if (rear == maxSize - 1) { rear = -1; } array[++rear] = item; itemCount++; } } public Integer remove() { if (isEmpty()) { System.out.println("Queue is empty"); return null; } else { int temp = array[front++]; if (front == maxSize) { front = 0; } itemCount--; return temp; } } public Integer peek() { if (isEmpty()) { System.out.println("Queue is empty"); return null; } else { return array[front]; } } public boolean isEmpty() { return itemCount == 0; } public boolean isFull() { return itemCount == maxSize; } public static void main(String[] args) { MyQueue myQueue = new MyQueue(5); myQueue.insert(1); myQueue.insert(2); myQueue.insert(3); myQueue.insert(4); myQueue.insert(5); myQueue.insert(6); System.out.println("peek: " + myQueue.peek()); myQueue.insert(5); System.out.println("remove: " + myQueue.remove()); System.out.println("peek: " + myQueue.peek()); myQueue.insert(6); System.out.println("peek: " + myQueue.peek()); System.out.println("remove: " + myQueue.remove()); System.out.println("remove: " + myQueue.remove()); System.out.println("peek: " + myQueue.peek()); System.out.println("remove: " + myQueue.remove()); System.out.println("remove: " + myQueue.remove()); } }
3、递归实现BinaryTree:
public class MyBinaryTree { private static class Node { int data; Node left; Node right; public Node(int data) { this.data = data; this.left = null; this.right = null; } } public Node root; public MyBinaryTree() { root = null; } private Node insert(Node node, int data) { if (node == null) { node = new Node(data); } else { if (data <= node.data) { node.left = insert(node.left, data); } else { node.right = insert(node.right, data); } } return node; } public void insert(int data) { root = insert(root, data); } public void insert(int[] data) { for (int i : data) { insert(i); } } public void preOrder(Node node) { if (node == null) { return; } System.out.println(node.data); preOrder(node.left); preOrder(node.right); } public void inOrder(Node node) { if (node == null) { return; } preOrder(node.left); System.out.println(node.data); preOrder(node.right); } public void postOrder(Node node) { if (node == null) { return; } preOrder(node.left); preOrder(node.right); System.out.println(node.data); } public static void main(String[] args) { MyBinaryTree binaryTree = new MyBinaryTree(); int[] data = { 4, 8, 7, 2, 9, 3, 1, 6, 5 }; binaryTree.insert(data); System.out.println("preOrder:"); binaryTree.preOrder(binaryTree.root); System.out.println("inOrder:"); binaryTree.inOrder(binaryTree.root); System.out.println("postOrder:"); binaryTree.postOrder(binaryTree.root); } }
发表评论
-
hibernate的Criteria Query(转)
2014-06-29 21:22 717当查询数据时,人们往往需要设置查询条件。在SQL或HQL语句 ... -
【转】hibernate 中 Criteria 的使用介绍
2014-06-29 21:21 972转自:http://www.blogjava.net/jjs ... -
【转】Hibernate中Criteria的完整用法
2014-06-29 21:20 724转自:http://www.cnblogs.com/maba ... -
Java读写Oracle中的BLOB和CLOB
2013-10-16 18:00 2014转:http://www.iteye.com/topic/6 ... -
Spring的事务管理入门:编程式事务管理(TransactionTemplate)
2013-10-15 16:20 1031可有效应用于Oracle 临时表的insert和select ... -
jdbcTemplate 调用存储过程和回到函数
2013-10-15 09:09 3778转:http://blog.csdn.net/dancelo ... -
Spring3核心技术之JdbcTemplate
2013-10-15 09:03 1330转:http://zhou137520.iteye.com/ ... -
验证码在WebLogic下报错java.io.IOException: response already committed
2013-05-06 14:16 2610我的登录验证码代码,一个jsp,在Tomcat下没有问题,但 ... -
Struts2在eclipse的console中总是出现WARN OgnlValueStack:45 - Could not find property
2013-04-17 18:00 1728struts2 在发开时,控制台如输出大量警告信息,太烦人 ... -
【转】Eclipse自动关闭解决方法及eclipse.ini设置
2013-03-29 15:21 3812转自:http://liujun5563.blog.163. ... -
[转]批量将Java源代码文件的编码从GBK转为UTF-8
2012-11-12 13:43 1509转自:http://my.oschina.net/binny/ ... -
对代理模式与Java动态代理类的理解
2012-09-25 01:51 01. 代理模式 代理模式的作用是:为其他对象提供一种 ... -
【转】 java中yield(),sleep()以及wait()的区别
2012-09-13 22:49 866从操作系统的角度讲,os会维护一个ready queue(就绪 ... -
java 继承类 变量、静态变量、构造函数执行顺序
2012-09-10 16:07 1052包含普通变量、静态变量、构造函数、继承类的执行顺序为: 1、父 ... -
京东2012春笔试编程题
2012-09-10 12:58 01、求给定数组中最大的K个数function array[] ... -
Java中a++和++a的分析
2012-09-18 08:34 2870本人从编译后的代码来看a++和++a的区别: 先看代码1: ... -
华为2012校园上机编程题
2012-09-09 16:04 0/** * 1. 手机号码合法 ... -
2011年9月7日,华为上机题Java实现
2012-09-08 15:58 0第二题: /** * 输入字符串长度len,字符串str, ... -
Java对于Cookie的操作详解
2012-09-18 08:34 8211.设置Cookie Cookie cookie = n ... -
自定义约瑟夫环
2012-09-11 10:29 733约瑟夫环(Josephus)问题:古代某法官要判决n个犯人的死 ...
相关推荐
对于“心希盼 binaryTree.doc”文档,很可能是对这种使用STL实现二叉树的详细教程或示例代码,可能涵盖了如何构建二叉树、执行各种操作以及解决实际问题的实例。通过阅读和理解这份文档,开发者能够深入理解如何结合...
LinkedList 设计java数据结构与算法系列文章目录(持续更新)java数据结构...Stack)设计与实现java数据结构与算法之队列(Queue)设计与实现java数据结构与算法之梯度思维(让我们更通俗地理解梯度)java数据结构与算法之树...
二叉树(BinaryTree)、二叉搜索树(BinarySearchTree、BST) 平衡二叉搜索树(BalancedBinarySearchTree、BBST) AVL树(AVLTree)、红黑树(RebBlackTree) B树(B-Tree) 集合(TreeSet)、映射(TreeMap) ...
例如,二叉搜索树(Binary Search Tree)可以用于快速查找、插入和删除元素。 ```java class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int val) { this.val = val; } } ``` 六、堆 堆...
根据提供的文件标题“数据结构Java版本.pdf”及描述“适合热爱学习...同时,掌握这些数据结构的Java实现方式对于进行软件开发具有重要意义。希望这份资料能够帮助到所有热爱Java编程的朋友,在学习的道路上更进一步。
了解和熟练掌握这些数据结构及其Java实现对于提升编程技能和解决实际问题至关重要。通过实践和不断学习,我们可以更有效地设计和优化算法,从而提高程序的性能和效率。在实际项目中,选择合适的数据结构往往能显著...
8. **数据结构**:如栈(Stack)、队列(Queue)、链表(Linked List)、树(Tree)和图(Graph)等,它们是实现这些算法的基础。 在这个Java实现的压缩包中,`TypicalCode.java`很可能是包含一个或多个以上算法的...
9. 二叉树的中序遍历(Inorder Traversal of a Binary Tree):给定一个二叉树,使用栈来实现中序遍历。难度:中等 10. 二叉树的前序遍历(Preorder Traversal of a Binary Tree):给定一个二叉树,使用栈来实现...
5. **二叉树(Binary Tree)**:二叉树是每个节点最多有两个子节点的数据结构,分为左子节点和右子节点。常见的二叉树类型有二叉搜索树、平衡二叉树(如AVL树和红黑树)等。二叉树在排序、查找、插入和删除操作中有...
3. **栈**(Stack):栈是一种后进先出(LIFO)的数据结构,Java中的java.util.Stack类提供了push、pop、peek等方法来实现栈的操作。栈在递归、回溯算法和表达式求解等方面有广泛应用。 4. **队列**(Queue):队列...
在Python中,虽然我们有丰富的内置数据结构,如列表、字典、集合和...下面我们将实现一些常见的基础数据结构,包括栈(Stack)、队列(Queue)、链表(Linked List)、哈希表(Hash Table)和二叉树(Binary Tree)。
系统中可能包含了上述数据结构的Java实现代码,以及一个名为“image”的文件夹,里面可能包含运行程序时需要的图片资源,如数据结构的可视化展示图。为了正确运行该系统,用户需要确保“image”文件夹位于D盘根目录...
《李春葆数据结构书上各算法实现》这个资源包含了数据结构领域中多个核心概念的C语言实现,根据文件名称,我们可以看到涉及了图(Grah.h)、二叉树(BinaryTree_YunSuan.h)、线性表(Linear_List_All.h)、栈与队列...
Java中的树结构包括二叉树(如BinaryTree)、红黑树(TreeMap的实现)和AVL树等。 在Java中,`java.util`包提供了对这些数据结构的支持,例如ArrayList、LinkedList、Stack、Queue等。同时,`java.util.concurrent`...
8. **二叉树(Binary Tree)**:二叉树是一种每个节点最多有两个子节点的树结构。Java中的TreeSet和TreeMap类利用红黑树(一种自平衡的二叉查找树)来实现高效的操作。 9. **图(Graph)**:图由节点和边构成,用于...
Java中的基本数据结构包括数组(Array)、链表(LinkedList)、栈(Stack)、队列(Queue)等。数组是最基础的结构,它提供了一种按索引访问元素的方法,但插入和删除操作效率较低。链表解决了数组在动态扩展时的...
Binary search tree Dynamic order statistics Red-black tree Interval tree Prefix Tree(Trie) *Suffix Tree(未实现)* B-Tree Hash by multiplication Hash table Universal hash function Perfect hash Java's ...
8. **树(Tree)**:二叉树是一种重要的数据结构,如二叉搜索树(Binary Search Tree,BST)能够支持快速的查找、插入和删除操作。Java的`java.util.TreeSet`和`java.util.TreeMap`基于红黑树实现。 9. **图(Graph...
在这个"JAVA版本的数据结构与算法.zip"中,"data-structures-and-abstraction-with-java-master"可能是一个源代码仓库,包含了各种数据结构和算法的Java实现。学习者可以通过阅读和运行这些代码,加深对数据结构和...