`
foxinmy
  • 浏览: 6174 次
  • 性别: Icon_minigender_1
  • 来自: 湘
社区版块
存档分类
最新评论

J2SE基础/数组相关

阅读更多

/**
	 * 数组排序(冒泡)
	 * eg:[2,3,1] => [1,2,3]
	 * @param array
	 */
	static void bubbleSort(int[] array) {
		// 临时变量
		int temp;
		// 循环排序
		for (int i = 0; i < array.length - 1; i++) {
			// 最大的元素交换到最后
			for (int j = 0; j < array.length - 1 - i; j++) {
				// 交换元素
				if (array[j] > array[j + 1]) {
					temp = array[j];
					array[j] = array[j + 1];
					array[j + 1] = temp;
				}
			}
		}
		// 输出
		for (int i = 0; i < array.length; i++) {
			System.out.print(array[i] + "\t");
		}
	}

	/**
	 * 两数组相同元素(无序)
	 * eg:[1,2,3],[9,3] => [3]
	 * @param a
	 * @param b
	 */
	static void findArray1(int[] a, int[] b) {
		// 循环比较
		for (int i = 0, j = 0; i < a.length;) {
			// 相等
			if (a[i] == b[j]) {
				System.out.print(a[i] + "\t");
				i++;
				j = 0;
			} else {
				if (j == b.length - 1) {
					i++;
					j = 0;
				} else
					j += (j < b.length - 1 ? 1 : 0);
			}
		}
	}

	/**
	 * 两数组相同元素(有序)
	 * eg:[1,2,3],[3,9] => [3]
	 * @param a
	 * @param b
	 */
	static void findArray2(int[] a, int[] b) {
		// 循环比较
		for (int i = 0, j = 0; i < a.length;) {
			// 相等
			if (a[i] == b[j]) {
				System.out.print(a[i] + "\t");
				i++;
				j = 0;
			} else if (a[i] > b[j]) {
				if (j == b.length - 1) {
					i++;
					j = 0;
				} else
					j += (j < b.length - 1 ? 1 : 0);
			} else {
				i++;
			}
		}
	}
/*
	 * 判断数组中的相同数
	 */
	static void bitMapTest() {
		// 定义int数组
		int iArray[] = { 5, 2, 3, 2, 1, 2 };
		// 确定数组最大值
		int max = 0;
		for (int i = 0; i < iArray.length; i++) {
			if (max < iArray[i])
				max = iArray[i];
		}
		// 确定数组的大小
		if (max == 0)
			max = 1;
		else
			max++;
		// 定义byte数组
		byte bArray[] = new byte[max];
		// 循环计算重复数字
		for (int i = 0; i < iArray.length; i++) {
			if (bArray[iArray[i]] == 1)
				System.out.println(iArray[i]);
			bArray[iArray[i]] = 1;
		}
	}
 
分享到:
评论

相关推荐

    J2SE基础知识大全

    J2SE基础知识是每一个Java开发者必须掌握的核心技能。以下将详细阐述J2SE中的关键概念和技术。 1. **Java语言基础** - **语法**:包括变量声明、数据类型(基本类型和引用类型)、运算符、流程控制(如if语句、for...

    J2SE_5.0_第05章_数组1.rar

    Java SE(Java Standard Edition)是Java开发平台的一个版本,主要用于桌面应用和服务器端开发。...数组是许多高级数据结构和算法的基础,理解并精通数组的操作对于学习Java乃至其他编程语言都至关重要。

    j2se基础课程资源

    本资源包是一套全面的J2SE(Java Standard Edition)基础教程,适合初学者深入学习Java编程。它包含了从基本语法到高级特性的多个主题,帮助初学者逐步掌握Java编程的核心知识。 1. **第二章 Java语法基础**:这...

    推箱子游戏源码程序(j2se基础)

    总之,“推箱子游戏源码程序(j2se基础)”是一个涵盖多方面Java编程技术的实例,包括GUI设计、事件处理、数据结构运用、算法实现以及异常处理等。通过学习这个源码,不仅可以巩固J2SE基础知识,还能提升问题解决和...

    J2SE基础全套资料

    《J2SE基础全套资料》是一份全面涵盖Java标准版(J2SE)基础知识的资源集合,适合初学者和有经验的开发者进行深入学习。这份资料包括了集合、线程、网络、图形用户界面(GUI)、数组、字符串等多个关键主题,旨在...

    J2SE基础复习提纲

    ### J2SE基础复习知识点详解 #### 一、Java环境搭建与配置 - **环境配置**: Java环境配置是学习Java编程的基础步骤。主要包括JDK(Java Development Kit)的安装与配置。 - **JRE与JDK的区别**: JRE(Java Runtime ...

    J2SE(javaSE基础知识).doc

    - J2SE(Java 2 Standard Edition):用于桌面应用。 - J2EE(Java 2 Enterprise Edition):适用于企业级应用,提供服务器端功能。 - J2ME(Java 2 Micro Edition):主要用于嵌入式系统和移动设备。 3. **Java...

    java j2se基础知识总结

    Java J2SE基础知识是Java开发的核心,涵盖了类定义、函数、对象创建、关键字、异常处理、导入语句、包管理、接口以及数组等多个方面。以下是对这些知识点的详细阐述: 1. 类定义:在Java中,类是面向对象编程的基本...

    j2se基础知识下载

    第二章:JAVA语言基础 第三章:面向对象编程 第四章:JAVA异常处理机制 第五章:数组 第六章:JAVA常用类 第七章:JAVA容器类 第八章:JAVA流技术 第九章:JAVA多线程机制 第十章:JAVA网络编程 第十一章:GUI编程

    JAVA基础(j2se部分)

    在探讨Java基础,特别是J2SE部分时,我们首先需要理解Java的几个核心概念。Java是一种面向对象的编程语言,其设计哲学强调“一次编写,到处运行”。Java语言发展至今,可分为几个部分,如J2SE、J2EE和J2ME。J2SE是...

    J2SE_5.0_第05章_数组3.rar

    《J2SE 5.0 第05章:数组3》是Java编程学习的重要章节,主要探讨了数组这一核心概念的深入应用。在Java中,数组是一种存储同一类型数据的集合,可以是一维、二维甚至是多维的。在这个章节中,我们将重点关注二维数组...

    关于JAVA面试题、J2SE基础

    为了在Java开发者岗位上取得成功,掌握扎实的J2SE(Java Standard Edition)基础知识至关重要。本资料集合了多个来源的Java面试题,涵盖了广泛的知识点,旨在帮助求职者充分准备面试。 一、Java基础 1. 类与对象:...

    j2se全部学习代码

    描述中提到,这个压缩包包含了从初学者阶段到全面掌握J2SE的学习过程中的所有练习代码,这意味着我们可以期待看到从基础语法到高级特性的各种示例。 在Java学习的过程中,通常会涵盖以下几个关键知识点: 1. **...

    java基础课程j2se

    Java基础课程J2SE是Java编程语言的核心部分,主要涵盖了面向对象编程的基础概念、语法以及标准库API的使用。在中兴(南昌)公司的培训中,这个课程是为初学者设计的,旨在帮助他们理解并掌握Java编程的基本技能。...

    j2se7官方API

    虽然J2SE 7本身并未实现完整的模块系统,但它是迈向Java 9模块化系统的重要一步,为后续版本奠定了基础。 以上只是J2SE 7中部分重要的新特性,实际上还有其他改进,如对`@Override`注解的扩展,以及对`javac`编译器...

    李兴华j2se不分的所有笔记

    Java平台的标准版(Java Standard Edition,简称J2SE)是Java编程语言的核心部分,包含了用于开发和运行桌面应用、服务器应用以及网络应用的基础工具和类库。李兴华的J2SE笔记集合了魔乐科技的丰富教学资源,覆盖了...

    J2SE_5.0_第05章_数组2.rar

    《深入理解Java SE 5.0 第五章:数组2》 ...总之,掌握Java中的数组操作是成为一名合格的Java程序员的基础。通过深入学习和实践,不仅能理解数组的基本用法,还能灵活运用数组解决实际问题,提升编程能力。

    j2se基础面试

    Java基础是所有Java开发者必备的知识体系,J2SE(Java 2 Platform, Standard Edition)是Java的核心部分,包含了用于开发和部署桌面应用的基本工具和API。以下是对J2SE面试中常见知识点的详细阐述: 一、基本规则:...

    j2se5.rar_J2SE 架构_j2se

    10. **日期和时间API**:虽然J2SE 5的日期时间API并不完善,但它是后来JSR 310(Java 8的日期和时间API)的基础,为处理日期和时间提供了新的方式。 文件"j2se5.gif"可能是一个详细的J2SE架构图,它可能展示了J2SE...

Global site tag (gtag.js) - Google Analytics