——搜索——
文章平均质量分 65
STILLxjy
不要让任何人打乱你生活的节奏
展开
-
(ByteDance)求全排列
字节面试二面算法题。题目:求无重复数组的求排列。思路是由dfs算法,每次从数组中取出一个没有被取出的数(即f[i] == 0),但取出所有数时,得到一种排列方式。回溯时,还原f[i] 的状态,删除当前列表中的最后的元素。代码package com.STILLxjy.codedance;import java.util.ArrayList;import java.util.List;public class permute { public static void main(S原创 2020-11-19 09:30:29 · 221 阅读 · 0 评论 -
(LeetCode 886)可能的二分法 [01着色问题,dfs模拟]
886. 可能的二分法给定一组 N 人(编号为 1, 2, …, N), 我们想把每个人分进任意大小的两组。每个人都可能不喜欢其他人,那么他们不应该属于同一组。形式上,如果 dislikes[i] = [a, b],表示不允许将编号为 a 和 b 的人归入同一组。当可以用这种方法将每个人分进两组时,返回 true;否则返回 false。示例 1:输入:N = 4, dislikes =...原创 2019-01-01 15:30:24 · 1181 阅读 · 0 评论 -
(LeetCode 934)最短的桥 [简单DFS + BFS]
934. 最短的桥在给定的二维二进制数组 A 中,存在两座岛。(岛是由四面相连的 1 形成的一个最大组。)现在,我们可以将 0 变为 1,以使两座岛连接起来,变成一座岛。返回必须翻转的 0 的最小数目。(可以保证答案至少是 1。)示例 1:输入:[[0,1],[1,0]]输出:1示例 2:输入:[[0,1,0],[0,0,0],[0,0,1]]输出:2示例 3:输入:[[1,...原创 2018-12-29 17:06:20 · 615 阅读 · 0 评论 -
(LeetCode 329)矩阵中的最长递增路径 [简单DP & 公式:dp[x][y] = dp[xx][yy] + 1]
329. 矩阵中的最长递增路径给定一个整数矩阵,找出最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。示例 1:输入: nums =[[9,9,4],[6,6,8],[2,1,1]]输出: 4解释: 最长递增路径为 [1, 2, 6, 9]。示例 2:输入: nums =[[3,4,5],...原创 2018-12-28 00:50:59 · 248 阅读 · 0 评论 -
(LeetCode 494)目标和 [DFS + 分类讨论]
494. 目标和给定一个非负整数数组,a1, a2, …, an, 和一个目标数,S。现在你有两个符号 + 和 -。对于数组中的任意一个整数,你都可以从 + 或 -中选择一个符号添加在前面。返回可以使最终数组和为目标数 S 的所有添加符号的方法数。示例 1:输入: nums: [1, 1, 1, 1, 1], S: 3输出: 5解释:-1+1+1+1+1 = 3+1-1+1+1+1...原创 2018-12-16 11:44:53 · 735 阅读 · 0 评论 -
(LeetCode 841) 钥匙和房间 [简单DFS]
841. 钥匙和房间有 N 个房间,开始时你位于 0 号房间。每个房间有不同的号码:0,1,2,…,N-1,并且房间里可能有一些钥匙能使你进入下一个房间。在形式上,对于每个房间 i 都有一个钥匙列表 rooms[i],每个钥匙 rooms[i][j] 由 [0,1,…,N-1] 中的一个整数表示,其中 N = rooms.length。 钥匙 rooms[i][j] = v 可以打开编号为 v...原创 2018-12-16 01:02:40 · 208 阅读 · 0 评论 -
(LeetCode 690)员工的重要性 [简单递归]
690. 员工的重要性给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id。比如,员工1是员工2的领导,员工2是员工3的领导。他们相应的重要度为15, 10, 5。那么员工1的数据结构是[1, 15, [2]],员工2的数据结构是[2, 10, [3]],员工3的数据结构是[3, 5, []]。注意虽然员工3也是员工1的一个下属,但是由于并不是直系下属,因此没有体...原创 2018-12-16 00:46:39 · 185 阅读 · 0 评论 -
(POJ 1270)Following Orders 求序列在限制条件下的 [全排列]
Following Orders Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 5218 Accepted: 2126 DescriptionOrder is an important concept in mathematics and in computer science. For example,原创 2017-10-13 17:40:11 · 551 阅读 · 0 评论 -
(POJ 2312)Battle City 优先队列 & 简单BFS
Battle City Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9324 Accepted: 3086 DescriptionMany of us had played the game “Battle city” in our childhood, and some people (like me原创 2017-10-07 23:06:36 · 413 阅读 · 0 评论 -
(HDU Tempter of the Bone II) BFS + 可捡炸弹炸墙的迷宫问题
Tempter of the Bone II Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 98304/32768 K (Java/Others) Total Submission(s): 1090 Accepted Submission(s): 272Problem Description The doggie fou转载 2017-05-17 23:11:18 · 739 阅读 · 1 评论 -
(HDU 1429)胜利大逃亡(续) BFS + 二进制状态压缩
胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 8588 Accepted Submission(s): 3085Problem Description Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜原创 2017-05-08 22:39:06 · 387 阅读 · 0 评论 -
(HDU 2821)Pusher DFS + 在一个方向上可以移动多位
Pusher Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/65536 K (Java/Others) Total Submission(s): 1508 Accepted Submission(s): 571 Special JudgeProblem Description PusherBoy is an原创 2017-05-16 20:15:21 · 404 阅读 · 0 评论 -
(HDU 1664)Different Digits BFS + 数论 + 余数判重 详细题解
Different Digits Time Limit: 10000/4000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1628 Accepted Submission(s): 470Problem Description Given a positive int原创 2017-05-13 22:06:49 · 614 阅读 · 0 评论 -
(HDU 1226)超级密码 BFS 同余模应用
级密码 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 4375 Accepted Submission(s): 1405Problem Description Ignatius花了一个星期的时间终于找到了传说中的宝藏,宝藏原创 2017-05-11 23:41:16 · 946 阅读 · 0 评论