哈希表 和 算法

news2024/11/16 13:46:06

1.哈希表的作用:将我们要存储的数据,通过关键字与位置的关系函数,来确定具体的位置。

2.写哈希表时常出现的问题:哈希冲突/矛盾:当多个数据满足哈希函数的映射时出现

    解决的方法为:

1)开放地址法 2)链地址法:通过链表的方法,将数据经过哈希函数映射后,链接在相应的链表 后。

3.

算法的设计‘

1.正确性,1)语法正确,合法的输入能得到合理的结果。2)合法输入能得到合理的结果。 3)对非法的输入,给出满足要求的规格说明,4)对精心选择,甚至刁难的测试都能运行正常,结果正确。

2.可读性:代码的注释,使代码便于阅读理解,,高内聚,低耦合

3.健壮性:能判断异常数据,并进行相应处理

4.高效率(时间复杂度 低)

5.低存储 (空间复杂度 低)

示例:

排序算法:

1)选择排序:a.思想:将每一个元素都与其后面的元素进行比较,满足筛选条件时,交换位置,达到目的

b.代码:

c.时间复杂度:O(n^2)

d.稳定性:不稳定

2)冒泡排序:a.思想:将每个元素与其后一个元素两两相比较

b.代码:

c.时间复杂度:O(n^2)

d.稳定性:稳定

3)插入排序法

a.思想:将每个元素都与其前一个元素进行比较,当满足条件时,交换元素

b.代码:

c.时间复杂度:O(n^2)

d.稳定性:稳定

4)快速排序法:

a.思想:从首个位置或者末尾找一个 “基准点”,通过从后往前或是从前往后,使比基准点小的数都在基准点的左边,比基准点大的数都在基准点右边。不断遍历,直到最后(begin >= end)

b.代码

c.时间复杂度:O(nlogn)

d.稳定性:不稳定

二分查找:1)数列必须有序 2)算法复杂度O(logn)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2120137.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MVC设计模式与delegate

一、MVC MVC就是Model(模型)、View(视图)、Controller(控制器) 例如上面的 excel表, 数据、数据结构就是模型Model 根据数据形成的直观的、用户能直接看见的柱形图是视图View 数据构成的表格…

ABAP JSON处理应用

1. json 转换成内表 通过上传URL获取json数据并转换为内表 json to itab关键字 METHOD get_itab_for_json.DATA : lr_client TYPE REF TO if_http_client,lv_url TYPE string,lv_content_type TYPE string VALUE application/x-www-form-urlencoded,ev_xstrin…

【python报错】ModuleNotFoundError: No module named ‘utils‘

问题 想要用python语言将A文件夹的a.py脚本引用utils文件夹b.py脚本,直接引用:from utils import XXX 导致在vscode编译器报错:ModuleNotFoundError: No module named utils 这里文件夹A和utils是同级目录【其他情况,修改后面代码…

背钻设计时要优先保证哪一项,STUB长度真的是越短越好吗

高速先生成员--王辉东 人道是: 八月十八潮,壮观天下无。 鲲鹏水击三千里,组练长驱十万夫。 红旗青盖互明末,黑沙白浪相吞屠。 人生会合古难必,此情此景那两得。 小蝶托着腮望着窗外,思绪飞到千里之外…

【鸿蒙开发从0到1 day08】

鸿蒙开发基础 一.联合类型二.枚举类型三.组件和样式1. ArkUI基本语法 四.尺寸五.字体1.字体颜色2.字体样式3.LineHeight() 设置行高 上间距文字下间距4.下划线:5.对齐方式(1)水平对齐方式(2)垂直对齐方式 6.文本缩进和文本省略号设置 六.图片1.图片的等比例缩放2.占位符3.图片填…

2024腾讯互联网AI应用专场

2024腾讯互联网AI应用专场 灵魂提问: 1、AI应用场景: 智能客服智能数据分析BI 通过AI生成的内容的点击率是人工生产的103%。 2、AI时代已经来临, 依然是这些互联网巨头领导。 现在股价低迷,是不是投资的好机会。 3、agent …

矩阵怪 - 2024全新矩阵产品,一键分发抖音,快手,视频号,B站,小红书!

1. 本方案面向谁,解决了什么问题 本方案主要面向C端客户,特别是那些在各大短视频平台(如小红书、抖音、视频号、快手、B站等)上进行内容创作和分发的个人用户、自由职业者、小型团队或企业。这些用户通常面临着在多个平台上同时发…

Python爬虫如何通过滑块验证

一:定位元素的坐标 当 Selenium 定位到元素后,如果想获取元素在页面中的具体坐标位置,可以通过 element.location 的方式来得到元素的起始坐标字典(元素的左上顶点)。然后再通过 element.size 的方式来获取该元素的宽…

Python列表浅拷贝的陷阱与破解之道

引言 在Python编程世界中,列表的拷贝操作看似简单,却常常隐藏着一些令人意想不到的陷阱,尤其是当涉及到浅拷贝时。今天,我们将深入探讨Python列表浅拷贝现象及产生原因,并提供有效的解决方案,帮助你写出更…

Mysql Innodb存储引擎原理—链接如下

Mysql Innodb存储引擎| ProcessOn免费在线作图,在线流程图,在线思维导图 ProcessOn是一个在线协作绘图平台,为用户提供强大、易用的作图工具!支持在线创作流程图、思维导图、组织结构图、网络拓扑图、BPMN、UML图、UI界面原型设计、iOS界面原型设计等。同…

Excel--复制粘贴时怎么跳过隐藏的行和列

方法一 比如如何跳过下面的行复制其他 首先将黄色的背景行按CTRL0隐藏起来 打开定位条件 选择可见单元格,点击确定 然后复制表格粘贴即可 方法二 首先将不需要的行和列隐藏起来,按Alt;锁定可见单元格。 复制粘贴即可,这样粘贴的…

解锁编程潜力,从掌握GitHub开始

目录: 一、搜索开源项目 1、什么是Git 2、Github常用词含义 3、一个完整的项目界面 4、使用Github搜索项目 1)in关键词 2)star或fork数量去查找 3)awesome加强搜索 二、访问速度慢的解决 1、使用网易UU加速器 2、使用…

redisservice jsonobect 转list

redis里存的是json&#xff0c;但是json的格式是list 怎么取出来呢 JSONArray cacheObject (JSONArray) redisService.getCacheObject("sys_dict:dispute_data_source_hn");Class<SysDictData> sysDictDataClass SysDictData.class;List<SysDictData>…

日历时钟怎么设置?桌面日历时钟设置方法

大家好&#xff0c;今天小编给大家介绍一下&#xff0c;日历时钟怎么设置&#xff1f;桌面日历时钟设置方法 第一&#xff1a;先安装《芝麻时钟》这个桌面时钟软件&#xff0c;这个桌面时钟软件非常的强大&#xff0c;可以在桌面显示各种各样的时钟&#xff0c;各种时钟风格大…

ubuntu20.04搭建vue开发环境

1、当前系统版本 cat /etc/issue 2、nodejs安装 sudo apt install nodejs 查看nodejs版本 3、npm安装 sudo apt install npm 查看npm版本 npm -v 4、Vue安装 sudo npm install -g vue-cli 查看版本和是否安装成功 5、创建vue项目 sudo vue init webpack vuedemo 6、运行…

C++之数据类型

//宏常量define&#xff08;注意书写格式&#xff09; #define a 7 //const修饰变量 const int b 365; 命名规则 数据类型之整型&#xff1a; sizeof&#xff08;&#xff09;&#xff1a;求数据类型所占空间大小&#xff0c;字节数 数据类型之实型&#xff08;浮点数&#…

如何使用命令行快速下载Google Drive/OneDrive大文件

OneDrive OneDrive使用wget下载会出现403 forbidden&#xff0c;可通过下面方法下载。 浏览器右键进入检查界面&#xff0c;选择netowork&#xff0c;搜索download.aspx&#xff0c;然后在待下载文件处点击下载&#xff0c;即可出现下载链接&#xff0c;复制为cURL即可下载。…

STM32 之 SDRAM 详解

目录 前言 一、SDRAM 简介 二、SDRAM的组成原理 2.1存储单元阵列 2.1.1地址译码 2.1.2存储电容 2.2控制逻辑 2.2.1时钟同步 2.2.2命令解码 2.2.3模式寄存器 2.3数据输入 / 输出缓冲 2.3.1数据总线 2.3.2数据锁存 2.4刷新电路 2.4.1自动刷新 2.4.2自刷新 三、S…

Parsec问题解决方案

Parsec目前就是被墙了&#xff0c;有解决方案但治标不治本&#xff0c;如果想稳定串流建议是更换稳定的串流软件&#xff0c;以下是一些解决方案 方案一&#xff1a;在%appdata%/Parsec/config.txt中&#xff0c;添加代理 app_proxy_address 127.0.0.1 app_proxy_scheme http…

每日OJ_牛客_乒乓球筐(字符串模拟)

目录 牛客_乒乓球筐&#xff08;简单模拟&#xff09; 解析代码 牛客_乒乓球筐&#xff08;简单模拟&#xff09; 乒乓球筐__牛客网 nowcoder有两盒&#xff08;A、B&#xff09;乒乓球&#xff0c;有红双喜的、有亚力亚的……现在他需要判别A盒是否包含了B盒中所有的种类&a…