- 浏览: 187880 次
- 性别:
- 来自: 自己输入城市...
文章分类
- 全部博客 (128)
- Java (13)
- Util (21)
- IO (1)
- Thread (4)
- Net (0)
- Design Patterns (0)
- Training (4)
- ----------------- (0)
- JS-1 (15)
- JS-3 (7)
- AJAX (3)
- AS (2)
- ------------------- (0)
- HTML (3)
- CSS (3)
- Art (15)
- -------------------- (0)
- RegExp (4)
- --------------------- (0)
- SQL (6)
- Servlet $ JSP (2)
- JDBC (2)
- ---------------------- (0)
- Bird (3)
- Setting (7)
- DL (4)
- PHP (4)
最新评论
-
durong11:
或者直接在函数的中加入:if(head.data.equals ...
我的Java单链表练习 -
durong11:
一种解释是:如果是从头结点insert 直接使用addFrom ...
我的Java单链表练习 -
老肥猴_vi:
谢谢。但是貌似insert函数( public boolean ...
我的Java单链表练习 -
niepeng880208:
支持
List转换成String数组 -
haohao-xuexi02:
EventHelp
幻灯片效果
package Sets; import java.util.HashSet; import java.util.Iterator; import java.util.Set; import java.util.TreeSet; /** * java集合操作 * * @author baby69yy2000 * */ public class Sets { /** 求并集 */ public static <T> Set<T> union(Set<T> setA, Set<T> setB) { Set<T> setUnion; if (setA instanceof TreeSet) setUnion = new TreeSet<T>(); else setUnion = new HashSet<T>(); Iterator<T> iterA = setA.iterator(); while (iterA.hasNext()) setUnion.add(iterA.next()); Iterator<T> iterB = setB.iterator(); while (iterB.hasNext()) setUnion.add(iterB.next()); return setUnion; } /** 求交集 */ public static <T> Set<T> intersection(Set<T> setA, Set<T> setB) { Set<T> setIntersection; T item; if (setA instanceof TreeSet) setIntersection = new TreeSet<T>(); else setIntersection = new HashSet<T>(); Iterator<T> iterA = setA.iterator(); while (iterA.hasNext()) { item = iterA.next(); if (setB.contains(item)) setIntersection.add(item); } return setIntersection; } /** 求差集 */ public static <T> Set<T> difference(Set<T> setA, Set<T> setB) { Set<T> setDifference; T item; if (setA instanceof TreeSet) setDifference = new TreeSet<T>(); else setDifference = new HashSet<T>(); Iterator<T> iterA = setA.iterator(); while (iterA.hasNext()) { item = iterA.next(); if (!setB.contains(item)) setDifference.add(item); } return setDifference; } /** * 判断子集操作 判断setA中的每个元素是否也存在于setB中 */ public static <T> boolean subset(Set<T> setA, Set<T> setB) { return intersection(setA, setB).size() == setA.size(); } /********************************下面是有序集的操作********************************/ /** 求交集 */ public static <T extends Comparable<? super T>> TreeSet<T> orderedIntersection( Set<T> a, Set<T> b) { TreeSet<T> setIntersection = new TreeSet<T>(); Iterator<T> iterA = a.iterator(), iterB = b.iterator(); T valueA, valueB; valueA = advance(iterA); valueB = advance(iterB); while(valueA != null && valueB != null) { if(valueA.compareTo(valueB) < 0) valueA = advance(iterA); else if(valueB.compareTo(valueA) < 0) valueB = advance(iterB); else { setIntersection.add(valueA); valueA = advance(iterA); valueB = advance(iterB); } } return setIntersection; } private static <T> T advance(Iterator<T> iter) { T value = null; if (iter.hasNext()) value = iter.next(); return value; } }
评论
1 楼
nickevin
2009-06-24
/** 求差集 */
public static <T> Set<T> difference(Set<T> setA, Set<T> setB) {
Set<T> setDifference;
T item;
if (setA instanceof TreeSet) {
setDifference = new TreeSet<T>();
} else {
setDifference = new HashSet<T>();
}
// 判断一下集合的数量大小 再比较
if (setA.size() > setB.size()) {
Iterator<T> iterA = setA.iterator();
while (iterA.hasNext()) {
item = iterA.next();
if (!setB.contains(item)) {
setDifference.add(item);
}
}
} else {
Iterator<T> iterB = setB.iterator();
while (iterB.hasNext()) {
item = iterB.next();
if (!setA.contains(item)) {
setDifference.add(item);
}
}
}
return setDifference;
}
public static <T> Set<T> difference(Set<T> setA, Set<T> setB) {
Set<T> setDifference;
T item;
if (setA instanceof TreeSet) {
setDifference = new TreeSet<T>();
} else {
setDifference = new HashSet<T>();
}
// 判断一下集合的数量大小 再比较
if (setA.size() > setB.size()) {
Iterator<T> iterA = setA.iterator();
while (iterA.hasNext()) {
item = iterA.next();
if (!setB.contains(item)) {
setDifference.add(item);
}
}
} else {
Iterator<T> iterB = setB.iterator();
while (iterB.hasNext()) {
item = iterB.next();
if (!setA.contains(item)) {
setDifference.add(item);
}
}
}
return setDifference;
}
发表评论
-
优先队列的实现
2008-05-11 05:00 975package Heap; import MyInter ... -
堆操作
2008-05-11 02:06 989Comparator接口 package MyInterfac ... -
HashSet 类的实现
2008-04-28 16:03 1197package Hash; import MyInter ... -
HashMap类的实现
2008-04-28 12:20 1541package Hash; import java.ut ... -
Hash类的实现
2008-04-27 15:10 841package Hash; import java.util ... -
散列表的设计-->线性探查法
2008-04-24 09:07 1930性能分析: 散列表中条目数的比例较小时,使用线性探查法的效率较 ... -
二叉排序树的TreeMap类设计
2008-04-23 23:29 1955Iterable接口 package MyInterface; ... -
二叉排序树的实现
2008-04-20 01:46 1672最适合用STree排序的是不可变类,不可变类的主要特征是它的对 ... -
InorderIterator类的实现
2008-04-07 08:41 957接口的定义: public interface MyItera ... -
BinaryTree遍历练习::表达式树
2008-04-05 14:35 1789package ExpressionTree; import ... -
二叉树遍历
2008-03-31 01:48 1099二叉树的高度 图(1) /**用后根遍历求二叉树的高度*/ ... -
有界队列
2008-03-26 00:14 1009package Queue; import java.uti ... -
Stack练习:: 中缀-后缀表达式
2008-03-21 17:18 1783package Stack.Calculate; imp ... -
链式队列的实现
2008-03-21 17:05 1356package Queue; import java.u ... -
Stack练习:: 十进制正整数转化成二进制
2008-03-17 16:09 1306include "stdio.h" in ... -
顺序栈的实现
2008-03-14 00:16 1091package Stack; /** * 顺序栈的实现 ... -
数据结构 Java循环双向链表
2008-03-08 17:33 3151■ 构造函数 每个构造函数都通过 this 来初始化链接域 p ... -
我的Java单链表练习
2008-03-06 19:14 3035package LinkedList; /** * ... -
我的ArrayList实现
2008-03-04 21:26 1381package ArrayList; /** * < ... -
[转]数据结构 用Java实现单链表
2007-11-28 12:56 17522007-08-24 页面自动刷 ...
相关推荐
在Java编程中,集合操作是...以上知识点涵盖了Java集合操作的基础到高级主题。理解并熟练运用这些概念,能够帮助开发者编写出高效、健壮的Java程序。通过阅读指定的博文和实践相关代码,可以进一步巩固和提升这些技能。
Java集合框架是Java API的一部分,它提供了多种数据结构,如List、Set和Queue等,以及操作这些数据结构的方法。这些数据结构可以帮助我们有效地存储和管理数据。 2. **ArrayList与HashMap**: - **ArrayList**:...
Java集合框架是Java编程语言中的一个核心部分,它为数据存储和管理提供了高效且灵活的解决方案。本思维导图及总结旨在深入理解并掌握Java集合的相关概念和使用方法。 首先,我们来了解一下Java集合框架的基本构成。...
本文将深入探讨Java集合框架的基础知识,包括接口、类、以及它们在实际开发中的应用。 首先,Java集合框架由一系列接口和实现这些接口的类组成。主要的接口有`List`、`Set`和`Queue`,它们各自代表了不同特性的数据...
Java 泛型集合和Java集合框架是Java编程中不可或缺的部分,它们为开发者提供了高效的数据存储和操作机制。本文将深入探讨这两个主题,并着重讲解`Collection`接口及其在Java中的应用。 首先,Java泛型是一种在编译...
对于Java集合框架,思维导图可能包括各个集合类的层次结构、它们的主要方法、性能特点、操作示例等,以及不同版本之间的改进点。 这份压缩包中的思维导图可以作为学习和复习Java集合框架的辅助材料,帮助开发者系统...
### Java集合排序及Java集合类详解 ...综上所述,Java集合框架为Java开发者提供了强大的工具来管理和操作数据集。了解和掌握这些集合类的基本特性和使用方法,对于编写高效、可靠的Java应用程序至关重要。
Java集合框架是Java编程语言中的一个核心组成部分,它为数据存储和操作提供了丰富的接口和类。在本篇中,我们将深入探讨Java集合的排序机制以及集合类的详细使用。 首先,我们来了解一下Java集合的基本分类。Java...
在学习和实践这些Java集合练习代码时,你不仅会掌握基本的集合操作,还会了解不同集合类型的选择依据,以及在实际场景中如何根据需求选择合适的集合。通过不断实践,你将能够熟练地运用Java集合框架解决各种数据处理...
Java集合框架是Java编程语言中用于存储和操作对象的工具,它提供了多种数据结构,如列表、集、映射等,以适应不同的数据处理需求。集合类通常位于`java.util`包下,是Java程序员必备的知识点。 1. **集合的概述** ...
Java集合框架是Java标准库的一部分,它提供了一系列的接口和类来存储和操作各种类型的对象集合。这些接口和类遵循一致的设计模式,使得开发人员可以方便地管理和操作数据。本文档将深入探讨Java集合框架的关键组成...
Collection 是集合框架中的根接口,提供了基本的集合操作,如 add、remove、contains 等。Collection 接口没有实现类,因此需要通过其子接口来实现。 Set 是一个不能包含重复元素的集合,SortedSet 是一个按照升序...
Java集合框架是Java编程语言中的核心部分,它提供了一种高效、灵活的方式来组织和操作对象的集合。在Java中,集合主要分为两大类:Collection和Map。本文将深入讲解Java集合类,特别是Collection接口和其下的List、...
Java集合框架是Java编程语言中不可或缺的一部分,它提供了一组接口和类,用于高效地存储、管理和操作数据。这个“一个讲解很清晰的Java集合框架PPT”显然是一个对外公开的教育资源,旨在帮助学习者深入理解Java集合...
Java集合框架是Java编程语言中一个非常重要的组成部分,它为开发者提供了存储和操作对象的统一接口和类。这个框架使得处理各种数据结构变得更加方便和高效。在这个“java集合框架的使用”主题中,我们将深入探讨如何...
Java集合框架是Java编程语言中的核心组件之一,它为存储、管理和操作对象提供了一套高效且灵活的工具。本系列深入讲解了Java集合框架中的重要组成部分,包括HashMap、ArrayList、LinkedHashMap、HashSet以及...
Java 集合框架是 Java 语言中用于存储和操作数据的框架。它提供了一种统一的方式来存储和操作不同类型的数据。集合框架包括 Collection、List、Set、Map 等接口,每个接口都有其特点和用途。 1.1.1 容器简介 容器...
### Java集合知识大全 #### 一、集合概述 在Java编程语言中,集合是一组用于存储其他对象的对象。集合框架提供了多种数据结构,用于管理不同类型的数据。这些数据结构包括列表(List)、集(Set)、映射(Map)等,每种...