首页 > TAG信息列表 > 金典
程序员面试金典 01.01. 判定字符是否唯一
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 https://leetcode.cn/problems/is-unique-lcci/ 示例 1: 输入: s = "leetcode" 输出: false 示例 2: 输入: s = "abc" 输出: true 限制: 0 <= len(s) <= 100 s[i]仅包含小写字母 如果你不使用额外的数据结构,会很加分。 先把输程序员面试金典:面试题 01.02. 判定是否互为字符重排
给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 思路:实际上就是比较两个字符串中相同字符的个数是否相同 class Solution { public boolean CheckPermutation(String s1, String s2) { int len1 = s1.length();程序员面试金典:[面试题 01.01. 判定字符是否唯一]
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 限制: 0 <= len(s) <= 100 如果你不使用额外的数据结构,会很加分。 //法一:使用额外空间,记录次数 class Solution { public boolean isUnique(String astr) { int[] count = new int[128]; for (char c程序员面试金典好题/面试题 01.05. 一次编辑
面试题 01.05. 一次编辑 字符串有三种编辑操作:插入一个字符、删除一个字符或者替换一个字符。 给定两个字符串,编写一个函数判定它们是否只需要一次(或者零次)编辑。 示例 1: 输入: first = "pale" second = "ple" 输出: True 示例 2: 输入: first = "pales" second = "程序员面试金典 - 面试题 16.15. 珠玑妙算
题目难度: 简单 原题链接 今天继续更新程序员面试金典系列, 大家在公众号 算法精选 里回复 面试金典 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 珠玑妙算游戏(the game of master mind)的玩法如下。 计算机有 4 个槽,每个槽放一个球,颜色可能是红色(R)、黄【super,this关键字和继承组合习题】金典习题 附答案与解析
话不多说先上代码!!! class Test{ //父类 String name = "Rose"; Test(){ System.out.println("Test"); } Test(String name){//name john this.name = name; } } class Demo extends Test{//子类 String name="Jack&q程序员面试金典 面试题 01.03. URL化
第一种解法:流函数stringstream的运用 class Solution { public: string replaceSpaces(string S, int length) { stringstream ss; for (int i = 0; i < length; ++i) { if (S[i] != ' ') { ss <程序员面试金典---5.8 绘制直线(leetcode)
目录 题目:绘制直线一、思路二、解法1.单独处理头尾法 题目:绘制直线 绘制直线。有个单色屏幕存储在一个一维数组中,使得32个连续像素可以存放在一个 int 里。屏幕宽度为w,且w可被32整除(即一个 int 不会分布在两行上),屏幕高度可由数组长度及屏幕宽度推算得出。请实现一个函数程序员面试金典 --- 4.11随机节点
目录 题目:随机节点一、思路二、解法1.选项32.选项4 题目:随机节点 你现在要从头开始实现一个二叉树类,该类除了插入(insert)、查找 (find)和删除(delete)方法外,需要实现 getRandomNode()方法用于返回树中的任意节点。该方法应该以相同的概率选择任意的节点。设计并实现 getRand力扣程序员面试金典-面试题 03.04. 化栈为队
题目:实现一个MyQueue类,该类用两个栈来实现一个队列。 示例: MyQueue queue = new MyQueue(); queue.push(1); queue.push(2); queue.peek(); // 返回 1 queue.pop(); // 返回 1 queue.empty(); // 返回 false 说明: 你只能使用标准的栈操作 -- 也就是只有 push to top, peek/po程序员面试金典:判定字符是否唯一
判定字符是否唯一 实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 示例 1: 输入: s = "leetcode" 输出: false 示例 2: 输入: s = "abc" 输出: true 题解 思考字符串的的字符范围? 字符串是 ASCII 字符串(128个可能性)还是 Unicode 字符串 如果是unico程序员面试金典:判定是否互为字符重排
判定是否互为字符重排 给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 示例 1: 输入: s1 = "abc", s2 = "bca" 输出: true 示例 2: 输入: s1 = "abc", s2 = "bad" 输出: false 题解 本题要求判断给定的两个字符串程序员面试金典 - 面试题 05.08. 绘制直线
题目难度: 中等 原题链接 今天继续更新程序员面试金典系列, 大家在公众号 算法精选 里回复 面试金典 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 绘制直线。有个单色屏幕存储在一个一维数组中,使得 32 个连续像素可以存放在一个 int 里。屏幕宽度为 w,且程序员面试金典 面试题 01.02.判定是否互为字符重排
面试题 01.02.判定是否互为字符重排 题目描述 给定两个字符串s1和s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 示例1 输入: s1 = “abc”, s2 = “bca” 输出: true 示例2 输入: s1 = “abc”, s2 = “bad” 输出: false 限制 0 <= len(s程序员面试金典 <Cracking the Coding Interview> 面试题 04.01. 节点间通路
地址 https://leetcode-cn.com/problems/route-between-nodes-lcci/ 节点间通路。给定有向图,设计一个算法,找出两个节点之间是否存在一条路径。 示例1: 输入:n = 3, graph = [[0, 1], [0, 2], [1, 2], [1, 2]], start = 0, target = 2 输出:true 示例2: 输入:n = 5, graph = [[程序员面试金典 <Cracking the Coding Interview> 面试题 01.06. 字符串压缩
地址 https://leetcode-cn.com/problems/compress-string-lcci/ 字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母程序员面试金典 面试题 02.07. 链表相交
给定两个(单向)链表,判定它们是否相交并返回交点。请注意相交的定义基于节点的引用,而不是基于节点的值。换句话说,如果一个链表的第k个节点与另一个链表的第j个节点是同一节点(引用完全相同),则这两个链表相交。 示例 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,程序员面试金典 - 面试题 03.01. 三合一
题目难度: 简单 原题链接 今天继续更新程序员面试金典系列, 大家在公众号 算法精选 里回复 面试金典 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 三合一。描述如何只用一个数组来实现三个栈。 你应该实现 push(stackNum, value)、pop(stackNum)、isEmp[算法练习及思路-程序员面试金典(Java解法)]No204.计数质数
题号:no204 题目名:计数质数 原题URL:https://leetcode-cn.com/problems/string-rotation-lcci/ 题目描述 统计所有小于非负整数 n 的质数的数量。 示例 示例 1: 输入:n = 10 输出:4 解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。 示例 2: 输入:n = 0 输出:0 限制 0 <= n[算法练习及思路-程序员面试金典(Java解法)]No51.硬币(完全背包问题+优化空间)
题号:no51 题目名:硬币 原题URL:https://leetcode-cn.com/problems/coin-lcci/ 题目描述 硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007) 示例 示例 1: 输入: n = 5 输出:2 解释: 有两种方式【程序员面试金典】面试题 16.17. 连续数列
题目 给定一个整数数组,找出总和最大的连续数列,并返回总和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。 思路 遍历数组,用sum保存遍历到改位置时最大连续和,如果【程序员面试金典】面试题 08.03. 魔术索引
题目 魔术索引。 在数组A[0...n-1]中,有所谓的魔术索引,满足条件A[i] = i。给定一个有序整数数组,编写一种方法找出魔术索引,若有的话,在数组A中找出一个魔术索引,如果没有,则返回-1。若有多个魔术索引,返回索引值最小的一个。 示例1: 输入:nums = [0, 2, 3, 4, 5] 输出:0 说明: 0下标的元素【程序员面试金典】面试题 04.04. 检查平衡性
题目 实现一个函数,检查二叉树是否平衡。在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。 示例 2: 给定二叉树 [1,2,2,3,3,null,null,4,4] 1【程序员面试金典】面试题 03.01. 三合一
题目 三合一。描述如何只用一个数组来实现三个栈。 你应该实现push(stackNum, value)、pop(stackNum)、isEmpty(stackNum)、peek(stackNum)方法。stackNum表示栈下标,value表示压入的值。 构造函数会传入一个stackSize参数,代表每个栈的大小。 示例1: 输入: ["TripleInOne", "push",【程序员面试金典】面试题 01.08. 零矩阵
题目 编写一种算法,若M × N矩阵中某个元素为0,则将其所在的行与列清零。 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ] 输出: [ [1,0,1], [0,0,0], [1,0,1] ] 示例 2: 输入: [ [0,1,2,0], [3,4,5,2], [1,3,1,5] ] 输出: [ [0,0,0,0], [0,4,5,0], [0,3,1,0] ]