05 2018 档案
摘要:问题 我的解答 思路:遍历数组把不是零的元素归纳到数组的一端,从标志位开始到数组结束的位置置为0。
阅读全文
摘要:自己的做法 结果说BigInteger不让用,因为输入数组可能是无限大的 基础的int long都不能满足要求。后来只好改成下面这种 思路就是新建一个比原数组长一个单位的数组,从尾部开始办理数组的每一位判断是否需要进1,并进行加1,放到新数组的i+1的位置,最后判断原数组第一位是否需要进1 如果需要
阅读全文
摘要:问题如下: 自己的解法: 思路: 1.先遍历数组1,将数组的每一项存入一个hashMap,如果一个元素出现多次则hashmap的value+1 2.遍历数组2,判断当前元素在hashmap中是否存在,如果存在就将这个元素加入到result中 3.判断当前元素的value,如果大于1则减1,否则将这个
阅读全文
摘要:问题如下 我的解答如下: 思路: 对数组进行排序 然后将i位置的元素与他前后的元素分别进行比较,如果都不相等表示他是唯一一个出现的,然后处理不相等的数据出现在数组头和尾的情况,最后处理数组长度为3和1的情况,这两种情况按上面的逻辑会数组越界。 给出的效率最高的解法: 其中 ^ 为异或运算符,将数字转
阅读全文
摘要:先看原题 第一种 自己在网上理解的解法: 1、用示例1做例子,先对key进行处理,如果key是负数则表示数组元素右移,所以当key是负数时将这个负数的k转换成所对应的正数。 2、将整个数组翻转。 得到的数组结果为:[7,6,5,4,3,2,1] 3、再将0 - k-1范围内的元素进行翻转 得到的数组
阅读全文
浙公网安备 33010602011771号