8.8 哈希表简单 1 Two Sum 141 Linked List Cycle

ops/2024/10/10 18:12:26/

1 Two Sum

在这里插入图片描述

class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {//给的target是目标sum 要返回vector<int> res(2,0);是在num中找加数//首先假设每个输入都是由唯一的结果,而且不适用相同的元素两次一共有n*(n-1)种情况//按照顺序返回ansvector<int> res(2,0);//暴力解题int n = nums.size();for(int i = 0 ; i < n ; i++){for(int j = i+1 ; j < n ; j++){if(nums[i] + nums[j] == target){res[0] = i;res[1] = j;return res;}}}return res;}
};

下方是哈希表解题:

class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {int n = nums.size();//使用target - nums[i]//哈希表,前者入哈希,后者查哈希unordered_map<int,int> hash;for(int i = 0 ; i < n ;i ++){if(hash.find(target - nums[i]) != hash.end()){return {hash[target - nums[i]] , i};}hash[nums[i]] = i;}return {};}
};

141 Linked List Cycle

在这里插入图片描述
在这里插入图片描述

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:bool hasCycle(ListNode *head) {int pos = -1;//哈希表存储什么?unordered_map<ListNode*,int> hash;ListNode *p = head;//一定要全部遍历吗?int i = 0;if(p == nullptr || p->next == nullptr){return false;}//怎么就能判定 p指向了之前的结点while(p){if(hash.find(p) != hash.end()){pos =  hash[p];return true;}hash[p] = i;i++;p = p->next;}return false;}
};

要求空间复杂度为O(1)使用快慢指针。


http://www.ppmy.cn/ops/93061.html

相关文章

1.mysql-DDL-数据库操作

DDL-数据库操作定义语言 DML-数据库操作语言 DCL-数据库控制语言 DQL-数据库查询语言 DDL-数据库操作 DDL-数据库操作- 查询 查询所有数据 SHOW DATABASES;查询当前数据库 SELECT DATABASE();DDL-数据库操作- 创建 CREATE DATABSE [IF NOT EXISTS] 数据库名 [ DEFAULT CHA…

c++_游戏_狼人杀

思路主要包括以下几个部分&#xff1a; 角色分配&#xff1a;代码中通过随机数的方式给狼人、平民、预言家和法师等角色进行分配&#xff0c;保证每个角色的数量和身份的随机性。 游戏进行&#xff1a;根据狼人、平民、预言家和法师等角色的身份&#xff0c;游戏进行了夜晚和白…

CSS的重绘和重排是什么?

你好同学&#xff0c;我是沐爸&#xff0c;欢迎点赞、收藏和关注。个人知乎 在CSS中&#xff0c;元素的某些属性的变化会触发浏览器的重绘&#xff08;Repaint&#xff09;或重排&#xff08;Reflow&#xff0c;也称为重渲染或回流&#xff09;。了解这些差异可以帮助开发同学优…

AI 手机的技术展望

某某领导问到我&#xff0c;AI手机这个产业发展如何&#xff1f;对于&#xff0c;地方科技园区&#xff0c;应该如何发展相关产业&#xff1f;我一时还真说不上来&#xff0c;于是&#xff0c;查了一下资料&#xff0c;大概应对了一下。 一&#xff1a;AI手机的定义 首先&…

Android顶部标题栏自定义,添加按钮

1. 先写一个标题栏的layout, 放在工程的res/layout下&#xff0c;如下: <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_par…

windows和office微软官方免费激活教程

微软提供了windows系统和office的官方免费激活&#xff0c;其实不用去买什么激活码&#xff0c;官方提供了激活方式&#xff0c;完全免费。目前测试没发现什么问题&#xff0c;windows还支持永久激活&#xff0c;比一些乱七八糟的kms激活工具还省心。 github地址&#xff1a;Gi…

【matlab版】如何利用代码计算声音信号的声压级

1、声压&#xff08;Sound Pressure&#xff09; 声压是声波传播过程中引起的介质&#xff08;如空气、水等&#xff09;中的压力变化。它是声波的基本物理量之一&#xff0c;用来描述声波在某一位置上的瞬时压力大小。 声压的单位是帕斯卡&#xff08;Pa&#xff09;&#x…

甄选范文“论数据湖技术及其应用”软考高级论文系统架构设计师论文

论文真题 请围绕“数据湖技术及其应用”论题,依次从以下三个方面进行论述。 1.概要叙述你所参与管理或开发的软件项目,以及你在其中所承担的主要工作。 2.详细阐述数据湖技术,并从主要数据来源、数据模式(Schema)转换时机、数据存储成本、数据质量、面对用户和主要支撑…