查找算法
来源:互联网 发布:北京java认证培训 编辑:程序博客网 时间:2024/05/22 12:12
1、二分查找(折半查找)
public static int binarySearch(int[] array, int key) {int low = 0;int high = array.length - 1;while(low <= high) {int mid = (low + high)/2;if (array[mid] < key) {low = mid + 1;} else if(array[mid] > key) {high = mid -1;} else {return mid;}}return -1;}
2、简单的模式匹配算法
public class Find {public static void main(String[] args) {String str1 = "hellohelloworldworld";String str2 = "helloworld";System.out.println(" " + findIndex(str1, str2));}public static int findIndex(String orgString, String subString) {char[] orgChar = orgString.toCharArray();char[] subChar = subString.toCharArray();int i = 0 ;int j = 0;while(i < orgChar.length && j < subChar.length) {if (orgChar[i] == subChar[j]) {i++;j++;} else {i = i - j + 1;j = 0;}}if (j >= subChar.length) {return i - j + 1;} else {return -1;}}}最坏的时间复杂度为O(m*n),m,n分别为两个字符串的长度。
3、字符串模式匹配(KMP)
未完待续...
阅读全文
0 0
- 查找算法(静态查找)
- 查找算法 二分查找
- 查找算法:二分查找
- 查找算法 - 二分法查找
- 算法--查找--二分查找
- 算法--查找--差值查找
- 查找算法:二分法查找
- 查找算法---二分查找
- 查找算法
- 查找算法
- 查找算法
- 查找算法
- 查找算法
- 查找算法
- 查找算法
- 查找算法
- 查找算法
- 查找算法:
- Excel导入导出工具类(java)
- 数据结构C
- Linux内存地址的分段、分页机制(上)
- 工作小记
- SpringMVC: 重拾springMVC+mybatis
- 查找算法
- 数据库备份
- [算法与数据结构]
- 电脑遇到搜狗拼音无法显示
- deeplab 官网
- excel中VLOOKUP跨文件的调用
- 《电脑蓝屏》
- LeetCode 60 Permutation Sequence (Python实现及详解)
- Android游戏开发之检测游戏碰撞的原理实现