ARTS第七周

2019-06-19  本文已影响0人  leo小超

Algorithm

shortest-palindrome
给定一个字符串s,在s前增加最少字符串使得回文
自己写的爆破方式时间超过了leetcode的时间限制并且写得也很复杂,看解决方法一种爆破一种KMP算法,KMP算法还在研究中。
爆破思路
反转s,从0开始对比是否回文
比如:bcdcba反转成abcdcb,第一次比较bcdcba和abcdcb不相等,第二次比较bcdcb和bcdcb相等,表示除去[0,i]后面的形成了回文,结果为[0,i]字符串 + s

public String shortestPalindrome(String s) {
        int n = s.length();
        String recv = new StringBuilder(s).reverse().toString();
        for (int i = 0; i <= n - 1; i++) {
            if (s.substring(0, n - i).equals(recv.substring(i))) {
                return recv.substring(0, i) + s;
            }
        }
        return "";
    }

Review

session-management
讲了session的几个特点,使用随机生成避免被碰撞出来;使用cookie方式传递不要使用url显示传递参数;使用框架内的生成session管理方式;有过期时间等等

Tips

禁ip命令
iptables -I INPUT -s **** -j DROP
-I(--insert):表示插入规则到规则链头(默认rulenum=1)
-D(--delete):删除规则
INPUT:filter表中链,表示包的流入规则,还有OUTPUT流出规则,FORWARD转发规则
-s(--source):指定数据源地址,-p可以指定协议等等
-j(--jump):跳转目标,DROP直接丢弃无返回,ACCEPT接受,REJECT拒绝可以明确返回拒绝

Share

java lambda表达式

上一篇下一篇

猜你喜欢

热点阅读