摘要: 题目描述 两个整数的 汉明距离 指的是这两个数字的二进制数对应位不同的数量。 计算一个数组中,任意两个数之间汉明距离的总和。 示例: 输入: 4, 14, 2 输出: 6 解释: 在二进制表示中,4表示为0100,14表示为1110,2表示为0010。(这样表示是为了体现后四位之间关系) 所以答案为 阅读全文
posted @ 2021-01-08 16:12 Flix 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 题目描述 请你为 最不经常使用(LFU)缓存算法设计并实现数据结构。它应该支持以下操作:get 和 put。 get(key) - 如果键存在于缓存中,则获取键的值(总是正数),否则返回 -1。 put(key, value) - 如果键已存在,则变更其值;如果键不存在,请插入键值对。当缓存达到其容 阅读全文
posted @ 2020-09-16 16:59 Flix 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 题目描述 删除最小数量的无效括号,使得输入的字符串有效,返回所有可能的结果。 说明: 输入可能包含了除 ( 和 ) 以外的字符。 示例: 输入: "()())()" 输出: ["()()()", "(())()"] 输入: "(a)())()" 输出: ["(a)()()", "(a())()"] 阅读全文
posted @ 2020-09-12 11:18 Flix 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。 请你找出这两个正序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。 你可以假设 nums1 和 nums2 不会同时为空。 示例: nums1 = [1, 3] nums2 = [2] 阅读全文
posted @ 2020-09-12 10:31 Flix 阅读(1006) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定两个字符串str1和str2,再给定三个整数ic,dc和rc,分别代表插入、删除和替换一个字符的代价,请输出将str1编辑成str2的最小代价。 示例: 输入:"abc","adc",5,3,2 输出:2 题目链接: https://www.nowcoder.com/questionT 阅读全文
posted @ 2020-09-01 16:29 Flix 阅读(881) 评论(0) 推荐(0) 编辑
摘要: 在 C++ 中,可以使用 istringstream 配合 getline 根据分隔符来分割字符串。 ## istringstream, ostringstream, stringstream区别 这 3 个 stream 都可以通过头文件 `#include ` 引入。三者的区别如下: - ost 阅读全文
posted @ 2020-09-01 10:50 Flix 阅读(9334) 评论(0) 推荐(6) 编辑
摘要: 题目描述 以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。 请注意,返回的规范路径必须始终以斜杠 阅读全文
posted @ 2020-09-01 10:25 Flix 阅读(494) 评论(0) 推荐(0) 编辑
摘要: 题目描述 班上有 N 名学生。其中有些人是朋友,有些则不是。他们的友谊具有是传递性。如果已知 A 是 B 的朋友,B 是 C 的朋友,那么我们可以认为 A 也是 C 的朋友。所谓的朋友圈,是指所有朋友的集合。 给定一个 N * N 的矩阵 M,表示班级中学生之间的朋友关系。如果M[i][j] = 1 阅读全文
posted @ 2020-08-28 22:03 Flix 阅读(522) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定一个非负整数数组,a1, a2, ..., an, 和一个目标数,S。现在你有两个符号 + 和 -。对于数组中的任意一个整数,你都可以从 + 或 -中选择一个符号添加在前面。 返回可以使最终数组和为目标数 S 的所有添加符号的方法数。 示例: 输入:nums: [1, 1, 1, 1, 阅读全文
posted @ 2020-08-27 22:28 Flix 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过 100 数组的大小不会超过 200 示例: 输入: [1, 5, 11, 5] 输出: true 解释: 数组可以分割成 [1, 5, 5] 和 [11]. 题目 阅读全文
posted @ 2020-08-27 21:12 Flix 阅读(411) 评论(0) 推荐(0) 编辑