03 2018 档案
摘要:Given an Android 3x3 key lock screen and two integers mand n, where 1 ≤ m ≤ n ≤ 9, count the total number of unlock patterns of the Android lock scree
阅读全文
摘要:寻找丢失的数 II 给一个由 1 - n 的整数随机组成的一个字符串序列,其中丢失了一个整数,请找到它。 注意事项 n <= 30 您在真实的面试中是否遇到过这个题? Yes 给一个由 1 - n 的整数随机组成的一个字符串序列,其中丢失了一个整数,请找到它。 注意事项 n <= 30 给一个由 1
阅读全文
摘要:首先,对于数字1,2,3,4而言,如果我们能求出其下一个排列,那么不断地求其下一个排列,得到的就是全排列,关于怎么求一个排列的下一个排列,见:http://www.cnblogs.com/jeysin/p/8647879.html. 基于这种思路,可以用非递归的方式实现求数字的全排列,以下是具体实现
阅读全文
摘要:下一个排列 给定一个整数数组来表示排列,找出其之后的一个排列。 注意事项 排列中可能包含重复的整数 您在真实的面试中是否遇到过这个题? Yes 给定一个整数数组来表示排列,找出其之后的一个排列。 注意事项 排列中可能包含重复的整数 给定一个整数数组来表示排列,找出其之后的一个排列。 注意事项 排列中
阅读全文
摘要:排列序号I 给出一个不含重复数字的排列,求这些数字的所有排列按字典序排序后该排列的编号。其中,编号从1开始。 您在真实的面试中是否遇到过这个题? Yes 排列序号I 给出一个不含重复数字的排列,求这些数字的所有排列按字典序排序后该排列的编号。其中,编号从1开始。 排列序号I 给出一个不含重复数字的排
阅读全文
摘要:康托展开式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! ,其中a[i]表示在未出现的元素中比当前元素小的个数。康托展开式可用于求一个排列位于全排列的第几个。同样,其逆过程可以求在全排列中的第k个排列是多少。具体实现如下: 例题1:
阅读全文
摘要:大家一定玩过“推箱子”这个经典的游戏。具体规则就是在一个N*M的地图上,有1个玩家、1个箱子、1个目的地以及若干障碍,其余是空地。玩家可以往上下左右4个方向移动,但是不能移动出地图或者移动到障碍里去。如果往这个方向移动推到了箱子,箱子也会按这个方向移动一格,当然,箱子也不能被推出地图或推到障碍里。当
阅读全文
摘要:今天才发现C++11原来支持原子操作,还支持thread类创建线程,真的是越来越6了。之前做项目的时候创建线程都是用POSIX标准的pthread_create函数,然后线程同步一般用的都是pthread_mutex。今天又get了一个新技能,可以用thread类来创建线程,用atomic_flag
阅读全文
摘要:链接:https://www.nowcoder.com/questionTerminal/621e433919214a9ba46087dd50f09879来源:牛客网度度熊最近对全排列特别感兴趣,对于1到n的一个排列,度度熊发现可以在中间根据大小关系插入合适的大于和小于符号(即 '>' 和 '<'
阅读全文
摘要:度度熊有一个N个数的数组,他想将数组从小到大 排好序,但是萌萌的度度熊只会下面这个操作:任取数组中的一个数然后将它放置在数组的最后一个位置。问最少操作多少次可以使得数组从小到大有序? 思路: 首先,对于一个长度为size的数组而言,最多调整size-1下即可有序,即每次把倒数第二小的数依次放到后面,
阅读全文
摘要:最长公共子序列、最长公共子串、最小编辑距离是三种常见的字符串比较算法,考虑到其中的动态规划思想、状态转移方程比较类似,实现的方法也是如出一辙,这里将其状态转移方程和相应的实现代码做一个总结。 1、最长公共子序列(longest common sequence) 状态转移方程: 实现代码: 当然了,如
阅读全文
摘要:给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢?输出需要删除的字符个数。 如:
阅读全文