摘要:
在腾讯云搞了台服务器,于是打算把博客移植过去。 博客新地址:周小楠的小窝 阅读全文
摘要:
题目链接:LeetCode 1020 飞地的数量 题目大意: 题解: 很显然,边缘的或者与边缘的直接或间接相连的可以离开网格边界。 从外向内搜索与边缘的直接或间接相连的,并打上标记,再遍历数组统计未打上标记的的个数。 class Solution { privat 阅读全文
摘要:
题目链接:LeetCode 10 正则表达式匹配 题目大意: 给你一个字符串和一个字符规律,请你来实现一个支持的正则表达式匹配。 匹配任意单个字符; 匹配零个或多个前面的那一个元素。 所谓匹配,是要涵盖整个字符串的,而不是部分字符串。 阅读全文
摘要:
题目链接:LeetCode 31 下一个排列 题目大意: 题解: 注意到下一个排列总是比当前排列要大,除非该排列已经是最大的排列。我们希望找到一种方法,能够找到一个大于当前序列的新序列,且变大的幅度尽可能小。具体地: 我们需要将一个左边的“较小数”与一个右边的“较大数”交换,以能够让当前排列变大,从 阅读全文
摘要:
题目链接:LeetCode 剑指Offer38 字符串的排列 题目大意: 输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 题解: 回溯 通过搜索和回溯枚举所有的排列情况,但会有重复的情况。 只要在递归函数中设定一个规则,保证在填每一个空位 阅读全文
摘要:
题目链接:LeetCode 136 只出现一次的数字 题目大意: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 不能使用额外的空间。 题解: 由于不能使用额外的空间,所以不能通过计数等方法解决。 于是想到位运算中的异或运算,有以下性质: 任何 阅读全文
摘要:
题目链接:LeetCode 1001 网格照明 题目大意: 题解: 假设一盏灯的坐标为,那么它所在的行的数值为,列的数值为,正对角线的数值为,反对角线的数值为。确定某一直线的唯一数值标识后,我们就可以通过哈希表来记录某一直 阅读全文
摘要:
题目链接:LeetCode 1143 最长公共子序列 题目大意: 题解: 最长公共子序列模板题,设为字符串与字符串的最长公共子序列长度,则状态转移方程为: \(dp[i][j] = max\{dp[i-1][j-1] + (A[i] == 阅读全文
摘要:
题目链接:LeetCode 剑指Offer51 数组中的逆序对 题目大意: 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 题解: 归并排序过程中计数即可。 class Solution { public: int rev 阅读全文