首页 > 其他分享 >LeetCode 剑指Offer 练习

LeetCode 剑指Offer 练习

时间:2024-03-21 20:45:34浏览次数:28  
标签:documents return shu Offer int zhong 练习 LCR LeetCode

目录

题目整理来源:[https://zhuanlan.zhihu.com/p/112990684](LeetCode By Python: 剑指Offer第2版 解题目录)

数据结构

LCR 120. 寻找文件副本

[https://leetcode.cn/problems/shu-zu-zhong-zhong-fu-de-shu-zi-lcof/solutions/](LCR 120. 寻找文件副本)

1.第一次想的是遍历对比
2.使用Hash

使用 Dictionary

public class Solution {
    public int FindRepeatDocument(int[] documents) {
Dictionary<int, int> valMap = new Dictionary<int, int>();

for (int i = 0; i < documents.Length; i++) {
	if (valMap.TryGetValue(documents[i], out int j))
		return documents[i];
	valMap.Add(documents[i], i);
}
return -1;
    }
}

LCR 121. 寻找目标值 - 二维数组

[https://leetcode.cn/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/description/](LCR 121. 寻找目标值 - 二维数组)

遍历每一行,然后用二分查找

public class Solution {
    public bool FindTargetIn2DPlants(int[][] plants, int target) {
 foreach (var row in plants)
 {
		if (DichotomySort(row, target) != -1)
return true;
	}
 return false;
    }


/// 二分查找
int DichotomySort(int[] nums,int target) {

	int left=0, right = nums.Length-1;

	while (left<=right) {

		int middle = left + ((right - left) >> 1);
		if(target== nums[middle])
			return middle;
		if (target>nums[middle]) {
		   left = middle + 1;
		}
		else {
		   right = middle - 1;
		}

	}
	return -1;
}
}

标签:documents,return,shu,Offer,int,zhong,练习,LCR,LeetCode
From: https://www.cnblogs.com/ZheLikeWater/p/18088203

相关文章

  • LeetCode刷题记录——day3
    1、https://leetcode.cn/problems/gas-station/submissions/514930619/?envType=study-plan-v2&envId=top-interview-150对于这个问题可以这样来考虑,将数据看作一个环,如果答案唯一,那么就意味着从任意一个节点开始寻找,最后都会得到同一个节点的答案,那么为何不直接从0节点开始呢?其......
  • 面向对象练习
    classPhone{Stringname;//手机名字intprice;//手机价格//开始书写javabeanpublicPhone(){}publicPhone(Stringname,intprice){this.name=name;this.price=price;}publicStringgetName(){......
  • 记忆化搜索 —— Leetcode 2684. 矩阵中移动的最大次数
    题目如下:给你一个下标从 0 开始、大小为 mxn 的矩阵 grid ,矩阵由若干 正 整数组成。你可以从矩阵第一列中的 任一 单元格出发,按以下方式遍历 grid :从单元格 (row,col) 可以移动到 (row-1,col+1)、(row,col+1) 和 (row+1,col+1) 三个单元......
  • 第一章 计算机网络概述——提纲 + 练习题(体系结构相关习题、时延计算相关习题)
    文章目录第一章计算机网络概述1.2因特网概述1.3三种交换方式1.4计算机网络的分类1.5计算机网络的性能指标1.6计算机网络的体系结构(重点、难点)第一章-习题第一部分-体系结构相关1、2、3、4、5、6、7、8、9、10、练习题第二部分-时延相关1、2、3、4、5、第一......
  • LeetCode-滑动窗口最大值
    """题目来源https://leetcode.cn/problems/sliding-window-maximum/"""fromcollectionsimportdequeclassSolution(object):defmaxSlidingWindow(self,nums,k):#记录所有区间长度为k的最大值ans=[]#单调递减队列,从队首......
  • 代码随想录算法训练营day29 | leetcode 491. 非递减子序列、46. 全排列、47. 全排列 I
    目录题目链接:491.非递减子序列-中等题目链接:46.全排列-中等题目链接:47.全排列II-中等题目链接:491.非递减子序列-中等题目描述:给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以按任意顺序返回答案。数组中可能含有重......
  • LeetCode 2265. Count Nodes Equal to Average of Subtree
    原题链接在这里:https://leetcode.com/problems/count-nodes-equal-to-average-of-subtree/description/题目:Giventhe root ofabinarytree,return thenumberofnodeswherethevalueofthenodeisequaltothe average ofthevaluesinits subtree.Note:Th......
  • 8年Android开发面试 30 家公司,终于拿到 Offer !
    前言首先介绍下个人情况,双非本科,写码8年,算是有行业积累。在老东家干了6年,发展一般,很想出去,但是一直没有合适的机会,只好一边准备面试一边学习。让我没有想到的是,突然收到了“毕业”通知,当然,不光是我,而是整个团队。毕业,对于我这样的老员工来说是不错的结果,因为正好我也......
  • 2024-03-20 leetcode写题记录
    目录2024-03-20leetcode写题记录23.合并K个升序链表题目链接题意解法4.寻找两个正序数组的中位数题目链接题意解法25.K个一组翻转链表题目链接题意解法2024-03-20leetcode写题记录23.合并K个升序链表题目链接23.合并K个升序链表题意给你一个链表数组,每个链表......
  • 2024-03-19 leetcode写题记录
    目录2024-03-19leetcode写题记录85.最大矩形题目链接题意解法2024-03-19leetcode写题记录85.最大矩形题目链接85.最大矩形题意给定一个仅包含0和1、大小为rowsxcols的二维二进制矩阵,找出只包含1的最大矩形,并返回其面积。解法先对每个元素求出其往上能延伸......