摘要:
题目 给你一个整数数组 nums 。如果 nums 的一个子集中,所有元素的乘积可以用若干个 互不相同的质数 相乘得到,那么我们称它为 好子集 。 比方说,如果 nums = [1, 2, 3, 4] : [2, 3] ,[1, 2, 3] 和 [1, 3] 是 好 子集,乘积分别为 6 = 23 阅读全文
摘要:
题目 给你一个字符串 s ,下标从 0 开始 ,且长度为偶数 n 。字符串 恰好 由 n / 2 个开括号 '[' 和 n / 2 个闭括号 ']' 组成。 只有能满足下述所有条件的字符串才能称为 平衡字符串 : 字符串是一个空字符串,或者 字符串可以记作 AB ,其中 A 和 B 都是 平衡字符串 阅读全文
摘要:
TreeSet和TreeMap元素之间比较大小是借助Comparator对象的compare方法。 但有些时候,即便compare()返回0也不意味着这两个元素直观上相同。 比如元素是二元组[a,b]的形式:对于[a1,b1]和[a2,b2],规定a1>a2&&b1>b2时[a1,b1]>[a2,b 阅读全文
摘要:
摩尔投票算法 摩尔投票法适用于求解“数组中出现次数大于n/2,n/3,...的元素”的问题。它的思想是对拼消耗,从第一选手开始闯关,遇到“非我同类”就“同归于尽”,相反遇到“同类”就相伴而行,最后剩下的选手即为所求的众数。 不过需要注意的是,并非最后得到的结果即为所求,当前数组并不是一定就存在符合条 阅读全文
摘要:
题目 我们称一个数字字符串是 好数字 当它满足(下标从 0 开始)偶数 下标处的数字为 偶数 且 奇数 下标处的数字为 质数 (2,3,5 或 7)。 比方说,"2582" 是好数字,因为偶数下标处的数字(2 和 8)是偶数且奇数下标处的数字(5 和 2)为质数。但 "3245" 不是 好数字,因为 阅读全文
摘要:
什么是快速幂算法 快速幂是在O(logn)的时间复杂度内计算乘方的算法,采用的是分治法。 算法实现 递归实现 int qpow(int a, int n) { if (n == 0) return 1; else if (n % 2 == 1) return qpow(a, n - 1) * a; 阅读全文
摘要:
题目 小朋友 A 在和 ta 的小伙伴们玩传信息游戏,游戏规则如下: 有 n 名玩家,所有玩家编号分别为 0 ~ n-1,其中小朋友 A 的编号为 0 每个玩家都有固定的若干个可传信息的其他玩家(也可能没有)。传信息的关系是单向的(比如 A 可以向 B 传信息,但 B 不能向 A 传信息)。 每轮信 阅读全文
摘要:
题目 给定一个机票的字符串二维数组 [from, to],子数组中的两个成员分别表示飞机出发和降落的机场地点,对该行程进行重新规划排序。所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 开始。 提示: 如果存在多种有效的行程,请你按字符自然排序返回最小的行程组合 阅读全文
摘要:
题目 按字典 wordList 完成从单词 beginWord 到单词 endWord 转化,一个表示此过程的 转换序列 是形式上像 beginWord → s1 → s2 → ... → sk 这样的单词序列,并满足: 每对相邻的单词之间仅有单个字母不同。 转换过程中的每个单词 si(1 ⇐ i 阅读全文