
数据结构和算法
粉末无颜
这个作者很懒,什么都没留下…
展开
-
java冒泡排序和选择排序
一,冒泡排序法基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。int[] arr = { 9, 5, 3, 1, 8, 7 };/** * 冒泡排序法 * @param arr */原创 2013-06-09 10:52:27 · 919 阅读 · 0 评论 -
java中List集合的遍历和两种实现类的比较分析
list集合的遍历3种方法:package com.sort;import java.util.ArrayList;import java.util.Iterator;import java.util.List;/** * list的三种遍历 * @author Owner * */public class ListTest { public static void原创 2013-06-11 09:02:19 · 34705 阅读 · 1 评论 -
java--让一个字符串反转
描述:给我一个字符串,例如I love java,输出: java love I方法一public class StringReverse { public void swap(char[] arr, int begin, int end) { while(begin < end) { char temp = arr[begin]; arr[begin]原创 2013-06-16 00:26:51 · 60431 阅读 · 6 评论 -
java--会场安排问题
描述学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动,每个时间最多安排一个活动。现在小刘有一些活动计划的时间表,他想尽可能的安排更多的活动,请问他该如何安排。输入第一行是一个整型数m(m每组测试数据的第一行是一个整数n(1随后的n行,每行有两个正整数Bi,Ei(0输出对于每原创 2013-06-18 11:21:28 · 3207 阅读 · 0 评论 -
java--奇偶数的简单分离
此题比较简单,有很多方法实现,这里总结了两个方法,经过测试,占用内存较低,运行时间较短的方法先看一下问题描述描述有一个整型偶数n(2输入第一行有一个整数i(2每组有一个整型偶数n。输出第一行输出所有的奇数第二行输出所有的偶数样例输入21014样例输出1 3 5 7 9 2 4 6 8 10 1 3 5 7 9 11原创 2013-06-16 12:45:54 · 4259 阅读 · 0 评论 -
java--解决矩形排序(Set集合运用)
以前对java的Set集合运用的不是很多,平时做项目什么的,只记得Hibernate关系实体映射中OneToMany和ManyToMany中,比如Set users = new HashSet();原来set过滤相同对象真的很方便,以及对象按照自己指定的方法排序,这些都挺实用的。描述现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复;还知道这个长方形的宽和长,编号原创 2013-06-16 10:20:40 · 2656 阅读 · 0 评论 -
java--解决喷水装置问题(两种方法)
描述现有一块草坪,长为20米,宽为2米,要在横中心线上放置半径为Ri的喷水装置,每个喷水装置的效果都会让以它为中心的半径为实数Ri(0<Ri<15)的圆被湿润,这有充足的喷水装置i(1<i<600)个,并且一定能把草坪全部湿润,你要做的是:选择尽量少的喷水装置,把整个草坪的全部湿润。输入第一行m表示有m组测试数据每一组测试数据的第一行有一个整数数n,n表示共有n个喷水装原创 2013-06-15 21:58:30 · 4360 阅读 · 0 评论 -
java--二进制字符串匹配的问题
描述Given two strings A and B, whose alphabet consist only ‘0’ and ‘1’. Your task is only to tell how many times does A appear as a substring of B? For example, the text string B is ‘1001110110’ while原创 2013-06-15 13:44:58 · 2578 阅读 · 0 评论 -
java--一道简单的括号匹配问题
描述现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0输出每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出NoNoYesimport java.util.Scanner;import java.ut原创 2013-06-15 00:00:54 · 13516 阅读 · 2 评论 -
java二分查找法
二分查找又称折半查找,它是一种效率较高的查找方法。 【二分查找要求】:1.必须采用顺序存储结构 2.必须是有序的数组首先先看看普通的搜索方法/** * 普通方法的查找 * * @param arr * @param value * @return */ public static int search(int[] arr, int v原创 2013-06-09 17:02:33 · 1150 阅读 · 0 评论 -
java中Map集合的常用遍历方法及HashMap的应用实例
Map的遍历大体有3种:1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中,放着的就是Map中的某一对key-value;2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来读取Map中的元素;3、遍历Map.values():它是Map中value的集合,我们可以直接通过这个集合遍原创 2013-06-11 11:20:01 · 36043 阅读 · 1 评论 -
java中Set集合的遍历及实现类比较分析
java中Set集合是一个不包含重复元素的Collection,首先我们先看看遍历方法package com.sort;import java.util.HashSet;import java.util.Iterator;import java.util.Set;/** * 一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的原创 2013-06-11 10:11:57 · 80045 阅读 · 1 评论 -
两个有序数组合并成一个有序数组
思想:先依次比较两个数组,按照小的就传入新的数组。当这次比较完之后可能有一个数组的长度很长,留下一些数组,然后在新数组的末尾插入即可。代码:package junit.test;/** * @author yans * @version 时间:2014年3月20日 下午9:45:18 */public class ArraySort { public static转载 2014-03-20 23:33:04 · 5447 阅读 · 0 评论