某公司研发中心笔试题

1:2的幂次方表示方法

答:(n&(n-1))==0

2:leetcode 第三题:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/

博主之前从没听说过滑动窗口

class Solution {
    public int lengthOfLongestSubstring(String s) {
        HashMap<Character,Integer> hashMap = new HashMap<Character,Integer>();
        int left = 0, right = 0, res = 0;
        while(right < s.length()) {
            Character cur = s.charAt(right);
            right++;
            hashMap.put(cur,hashMap.getOrDefault(cur,0) + 1);
            while(hashMap.get(cur)>1) {
                Character remove = s.charAt(left);
                left++;
                hashMap.put(remove,hashMap.getOrDefault(remove,0) - 1);
            }
            res = Math.max(res,right - left);
        }
        return res;
    }
}

3:10进制数转16进制

	@Test
    public void test() {
        char hex[] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
        int num = 45353;//例子
        char[] count = new char[1024];//记录每一个位置上的数值
        int i=0;//记录个数
        StringBuilder s = new StringBuilder();
        while(num>0) {
            count[i++] = hex[num % 16];//num % 16为余数
            num = num / 16;
        }
        for (int j = i-1;j >= 0;j--) {
            s.append(count[j]);
        }
        System.out.println(s.toString());
    }

4:如何将字符串脱敏(给出json格式的数据,按要求对相应位置的值进行隐匿处理)

博主没写出来,其实博主好多都没写出来,博主太菜了

以上提供相关资料,继续加油!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值