java折半查找法递归_Java实现折半查找(二分查找)的递归和非递归算法

Java实现折半查找(二分查找)的递归和非递归算法

转 : http://wintys.blog.51cto.com/425414/94051

/**

*名称:BinarySearch

*功能:实现了折半查找(二分查找)的递归和非递归算法.

*说明:

*     1、要求所查找的数组已有序,并且其中元素已实现Comparable接口,如Integer、String等.

*    2、非递归查找使用search();,递归查找使用searchRecursively();

*

*本程序仅供编程学习参考

*

*@author:   Winty

*@date:     2008-8-11

*@email:    wintys@gmail.com

*/

class BinarySearch> {

private T[]  data;//要排序的数据

public BinarySearch(T[] data){

this.data = data;

}

public int search(T key){

int low;

int high;

int mid;

if(data == null)

return -1;

low = 0;

high = data.length - 1;

while(low <= high){

mid = (low + high) / 2;

System.out.println("mid " + mid + " mid value:" + data[mid]);///

if(key.compareTo(data[mid]) < 0){

high = mid - 1;

}else if(key.compareTo(data[mid]) > 0){

&n

相关文档:

import java.awt.*;

import java.awt.event.*;

//俄罗斯方块类

public class ERS_Block extends Frame{

public static boolean isPlay=false;

public static int level=1,score=0;

public static TextField scoreField,levelField;

public static MyTimer timer;

Ga ......

public class InsertBlobData {

Connection con = null;

/**

* @param args

* @throws Exception

*/

public static void main(String[] args) throws Exception {

// TODO Auto-generated method stub

InsertBlobData data = new InsertBlobData();

data.insertBlogInfo("002jpg", "sdsdfdf", "2007-02-1 ......

对枚举类型印象大多来自于C

语言,在

C

语言中,枚举类型是一个

HardCode

(硬编码)类型,其使用价值并不大。因此,在

Java 5

之前,枚举是被抛弃的。然而

Java 5

以后的发现版本开始对枚举进行支持,枚举的引入给

Java

世界带来了争议。

笔者比较赞同引入枚举,作为一门通用的静态编程语言,应该是 ......

0

.引言

在ChinaITLAB

导师制辅导中,笔者发现问得最多的问题莫过于"

如何学习编程?Java

该如何学习?"

。类似的问题回答多了,难免会感觉厌烦,就萌生了写下本文的想法。到时候再有人问起类似的问题,我可以告诉他(她),请你去看看《Java

学习之路》。拜读过台湾蔡学镛先生的《Java

夜未眠》,有 ......

public static void replaceString(String a,String b,String c){

System.out.println(a);

String result = a.replaceAll("(?i)"+b, c); //大小写不敏感

......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值