算法JAVA实现
在云边听雨
这个作者很懒,什么都没留下…
展开
-
字符串循环右移
public class Test {private String reverse(String s,int f,int t){char[] cs = s.toCharArray();if(cs.length > t && t > f){int i,j;for(i=f,j=t; i char x = cs[i];cs[i] = cs[j];cs[j] = x;原创 2014-02-20 09:58:22 · 690 阅读 · 0 评论 -
字梯
public class WordLadder { public static void main(String[] args) { String start = "hit",end = "cog"; Set dict = new HashSet(); dict.add("hot"); dict.add("dot"); dict.add("dog"); dict原创 2014-04-13 17:10:39 · 993 阅读 · 0 评论 -
旋转矩阵
/** * 对第i个矩形(i=0, 1, 2 …),4个顶点的坐标为:(i, i) ----------------------------------------- (i, n–1-i)| ||原创 2014-05-14 10:06:06 · 413 阅读 · 0 评论 -
旋转图像
您将一个n×n的二维矩阵表示图像。 90度(顺时针)旋转图像。 跟进: 你可以这样做原地?转载 2014-05-20 09:21:24 · 378 阅读 · 0 评论 -
搜索矩阵
写一个有效的算法,搜索在MXN矩阵的值。该矩阵具有的属性: 1)每行中的整数的排序从左至右。 2)每行的第一个整数大于所述前一行的最后一个整数。 例如,考虑下面的矩阵: [ [1,3,5,7], [10,11,16,20], [23,30,34,50] ] 给定的target = 3,则返回true。public class MyAlg {pu原创 2014-05-19 16:58:50 · 730 阅读 · 0 评论 -
单词分割
public class AlgTest {private static final int START = 0;//开始值public static void main(String[] args) {String s = "hellleet";Set dict = new HashSet();dict.add("hell");dict.add("leet");if原创 2014-04-12 17:06:15 · 454 阅读 · 0 评论 -
逆波兰式
public class AlgTest {private static Stack stack = new Stack();public static void main(String[] args) {String[] tokens = new String[] { "2", "1", "+", "3", "*" };String[] tokens1 = new String[原创 2014-04-12 14:40:14 · 552 阅读 · 0 评论 -
找出数组中的最大有序子数组
public class FindConArray {public static void main(String[] args) {int[] nums = {1000,4, 200, 1, 3, 2}; System.out.println(longestConsecutive(nums));}public static int longestConsecuti原创 2014-05-12 11:23:06 · 832 阅读 · 1 评论 -
验证是否回文
把相同的词汇或句子,在下文中调换位置或颠倒过来,产生首尾回环的情趣,叫做回文,也叫hui环原创 2014-05-12 12:04:24 · 482 阅读 · 0 评论 -
strStr()实现
strStr(String src,String dest)在src中找到子字符串dest并返回剩下的部分。原创 2014-05-07 16:30:16 · 408 阅读 · 0 评论 -
矩阵中有0的元素,将它所在的行和列的元素设置为0
矩阵中youpublic class MyAlg { public static void main(String[] args) { int[][] matrix = { {0,2,4,5}, {2,34,0,43}, {34,4,8,56}};MyAlg.setZeros(matri原创 2014-05-07 18:31:14 · 1170 阅读 · 0 评论 -
合并两个有序数组
public class Solution { public void merge(int A[], int m, int B[], int n) { while(m > 0 && n > 0){ if(A[m-1] > B[n-1]){ A[m+n-1] = A[m-1]; m--转载 2014-05-07 15:49:57 · 511 阅读 · 1 评论 -
String类型转int类型
public class MyAlgTest {public static int atoi(String str){if(str == null || str.length() return 0;}str = str.trim();char flag = '+';int i = 0;if(str.charAt(0) == '-'){flag = '-';原创 2014-05-07 09:28:25 · 520 阅读 · 0 评论 -
三数字想加等于0
三数字想加等于0 性能 Opublic class ThreeSum {public static void main(String[] args) {int[] nums = {-1,0,1,6,-2,-4};System.out.println(threeSum1(nums).toString());} public static ArrayList threeSu转载 2014-04-16 09:30:46 · 783 阅读 · 0 评论 -
多种负载均衡算法及其 Java 代码实现
首先给大家介绍下什么是负载均衡(来自百科)负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展 网络设备和 服务器的带宽、增加 吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web 服务器、 FTP服务器、 企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务转载 2017-02-15 08:41:06 · 275 阅读 · 6 评论