• LeetCode 15 3Sum(3个数求和为0的组合)


     
    Problem: 给定整数集合,找到所有满足a+b+c=0的元素组合,要求该组合不重复。
     
    首先对给出的数组进行排序 Arrays.sort()
    从第0个元素开始进行判断,对应的有最大值num[high]
    1、当num[low]+num[high]== -num[i]时,此时可以将num[low],num[high],num[i]添加至list中
        a. 当low<high并且num[low]==num[low+1]时,需要考虑到重复问题,因此要进行 low++操作
        b. 当low<high并且num[high]==num[high—]时,同样需要进行去重复操作,进行high—操作
        c. 上述操作结束后需要对low++ ,high—
     
    2、当num[low]+num[high]< -num[i]时,需要移动最小值指针 low++
    3、当num[low]+num[high]< -num[i]时,需要移动最大值指针 high--
     
    参考代码:
    package leetcode_50;
    
    /***
     * 
     * @author pengfei_zheng
     * 最长公共前缀
     */
    public class Solution14 {
        public String longestCommonPrefix(String[] strs) {
            if(strs == null || strs.length == 0)    return "";//字符串数组为空或者长度为0
            String pre = strs[0];
            int i = 1;
            while(i < strs.length){//遍历所有字符串
                while(strs[i].indexOf(pre) != 0)//当前子串不满足前缀
                    pre = pre.substring(0,pre.length()-1);//当前子串长度减一
                i++;
            }
            return pre;//返回前缀
        }
    }
     
     
  • 相关阅读:
    GAN 的推导、证明与实现。
    WGAN学习笔记
    常用损失函数积累
    交叉熵在loss函数中使用的理解
    贝叶斯决策
    极大似然估计
    gated pixelCNN。
    三叉搜索树 转载
    Rabin-Karp 字符串匹配算法
    面试题整理 转载
  • 原文地址:https://www.cnblogs.com/zpfbuaa/p/6505754.html
Copyright © 2020-2023  润新知