java常见算法
2013-09-26 19:23
218 查看
1.冒泡排序
public int[] bubbleSort(int arr){ int temp; boolean isOk; for(int i = 0; i < arr.length; i++){ isOk = true; for(int j = 0; j < arr.length - i - 1; j++){ if(arr[j] > arr[j + 1]){ temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; isOk = false; } } if(isOk){ break; } } return arr; }
2.阶乘
public int calculatorJ(int j){ return j == 1 ? 1 : j * calculatorJ(j - 1); }
3.最大公约数
public int divisor(int m, int n){ if(m % n == 0) return n; else return divisor(n, m % n); }
4.最小公倍数
public int getGBS(int n1, int n2){ int gbs = n1 * n2 / divisor(n1,n2); return gbs; }
5.验证字符串是否符合由(),[],{}组成的不交叉表达式
public boolean metchBreaker(String s){ List<Character> list = new LinkedList<Character>(); char c; try{ for(int i = 0; i < s.length(); i++){ c = s.charAt(i); switch (c) { case '{': case '[': case '(': list.add(c); break; case '}': if('{' == list.get(list.size() - 1)){ list.remove(list.size() - 1); }else{ return false; } break; case ']': if('[' == list.get(list.size() - 1)){ list.remove(list.size() - 1); }else{ return false; } break; case ')': if('(' == list.get(list.size() - 1)){ list.remove(list.size() - 1); }else{ return false; } break; } } }catch (Exception e) { return false; } if(list.isEmpty()) return true; else return false; }
相关文章推荐
- Java基础三种常见交换算法的比较
- 面试10大算法汇总+常见题目解答(Java)
- JAVA常见算法题(八)
- 常见算法学习及其Java实现--插入排序算法
- JAVA常见算法题(二十)
- 我在北京找工作(四):java实现递归<1> 一些笔试题+常见算法
- Java常见排序算法之冒泡排序
- java之美之常见算法(详解)
- JAVA常见算法题(三十五)
- JAVA常见的权限控制算法的实现
- JAVA常见的权限控制算法的实现[转]
- Java 求解最大公约数的四种常见算法
- Java中常见算法总结
- JAVA常见算法题(九)
- JAVA常见算法题(二十六)
- 在Java中利用Apache Commons Codec API实现常见的加密解密算法,如:md5,sha256
- 【算法】Java中的常见排序Sort
- 面试10大算法汇总+常见题目解答(Java)
- JAVA常见算法题(十)
- JAVA常见算法题(二十一)