public String up(String number, boolean updown) { int i = 0; String s = ""; StringTokenizer tokenizer = new StringTokenizer(number, ","); Array = new double[tokenizer.countTokens()];//字符串的解析,计算在生成异常之前可以调用此 tokenizer 的 nextToken 方法的次数/ while (tokenizer.hasMoreTokens()) { String d = tokenizer.nextToken(); Array[i] = Double.valueOf(d);//将字符串转换为双字节类型 i++; } QSort(Array, 0, Array.length - 1);// 调用快速排序(升序) if (!updown) { double num; int low = 0, high = Array.length - 1; for (; low < high; low++, high--) { num = Array[low];//数组交换位子 Array[low] = Array[high]; Array[high] = num; } } for (i = 0; i < Array.length - 1; i++) { s += String.valueOf(Array[i]) + ","; } return s + String.valueOf(Array[Array.length - 1]); } public int searchNumber(double num, boolean updown) {// 折半查找算法 int left = 0, right = Array.length - 1, middle = -1; while (left <= right) { middle = (left + right) / 2; if (num == Array[middle]) return middle; if (updown) {//如果数组是升序 if (num > Array[middle]) left = middle + 1; else right = middle - 1; } else {//数组是降序 if (num >Array[middle]) right = middle - 1; else left = middle + 1; } //return middle; } return -1; }
- 1
- 粉丝: 9
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助