寒假 6(计划更改)

遇到了一道题:longest substring with at most two distinct characters

我用sliding window解了,看到有个解法中有用到hash table的,至此了解到数据结构的概念,决定更改计划。

开始学习《数据结构与算法分析  c语言实现》。

此处附上暂时的对hash table的理解:

hash table:数据结构的一种,和数组。链表是一个类型的东西,用于整体存储调用一定数量的数据。是一种存储和调用数据的方式。

哈希表对待查数据构造商群,到一个关键字集合中,使用商群到原集的映射,每个关键字映射到一个等价类集合,通过关键字查找到对应的数据地址,在同一个等价类中,又有其他的秩序,便于系统的寻址

不同元素在同一等价类中的现象称为,哈希冲突,冲突是高效寻址的副产物,无法避免。

但是可以在同一等价类中构造秩序,例如链表。以进行下一步的精确寻址。

构建过程:

分配内存,内存分成不同的小块并区分,用于存放不同的等价类。

把元素集按某个,等价关系,构建商映射,得到不同的等价类,每个等价类通过一个map对应到存储块上

每个等价类中的元素的区分函数

等价关系的构建,等价类到内存块的映射,区分函数的构建;内存分块方法

内存分配与分块:多次调用malloc分配储存空间并用不同的指针标识

等价关系和商映射的构建:根据元素类型特点,找可利用的性质;根据性质确定一个key

区分函数的构建,根据元素类型特点,找可利用的性质

等价类到内存块:这就是hash函数?

使用的时候:

查找某元素:得到key,hash函数处理key得到hash值,对应到内存块,内存块内用比较函数,得到目标数据

原文地址:https://www.cnblogs.com/guguclaire/p/8424284.html

时间: 2024-10-11 00:36:24

寒假 6(计划更改)的相关文章

【大二上寒假充电计划】

1.寒假安排? 看算法的书 刷csp试题 刷力扣算法题 学会自己造轮子 通关下载的游戏 动笔写自传记录在博客上 动笔写与女朋友的相恋过程 丰富自己的博客 网上冲浪 2.时间安排?? 时间 安排 --8:00 起床 8:00--9:00 洗漱吃东西计划一天的安排 9:00--11:00 看书写文章 11:00--12:00 写自传 --2:30 睡觉 3:00--6:00 刷csp力扣算法题写博客 --9:00 看视频网课 9:00-- 充电或者娱乐 --2:00 睡觉 3.说明?? 正式开始时间

寒假c++计划

课程 西安交通大学[https://www.icourse163.org/course/XJTU-46006?tid=1002265006] 理由 本身中国大学mooc里c++课程不多,完结了能够有很大空余调度而且课程内容丰富的没有几个可选,根据内容丰富以及既往开课情况让我选择这个课程 计划 开学前基本学完课程,按难易程度及时间空余程度进行安排 针对课件的学习截至15日 针对视频的学习截至18日 计划存在不确定性,加上补考复习,deadline设置为2月20日,将未完成内容列出. 未完成 第1周

C++寒假学习计划

课程 中国大学mooc西北工业大学c++程序设计 理由 本课程有48节,章节分类清晰,由许多小知识块组成,条例清晰便于学习,由基础开始,由浅入深,适合我这种小白. 计划 从2.8号至2.28除去2.16过年共19天,每天学3到4节,学有余力的话会多学几节,为后面的学习减少一点压力. 课程目录如下 第1讲 C++语言概述 第2讲 信息的表示与存储 第3讲 程序中数据的表示 第4讲 运算符与表达式 第5讲 顺序结构的程序设计 第6讲 选择结构的程序设计 第7讲 循环结构的程序设计 第8讲 循环结构的

关于这个月和寒假的计划

一个菜鸟的烦恼日记 这个月开始12/8号,开始上Rhcsa的课,每个星期六日都上,一上就上了8小时,那个老师挺会废话,我之前用了一星期看完他的视频,期间用1.5的速度看的视频,哎,周末不能回家,还是家里的菜好吃,在学校穷得只能吃乌冬面了. 昨天我蹲坑的时候一直在想一个问题周兵周五开会说JS没什么用,不要一直研究,我一开始是觉得如果我深入js的话,就相当于熟悉了语言,这样的话去学习其他语言后容易一些,所以一直没有听他的,不过蹲坑时突然觉得他好像说得没错,如果做个网站的话,js好像就做一些动态的东西

寒假学习计划

感觉以前的时间都有些浪费了,时间很紧迫,大学时光眨眼间就快过去一半了.虽然无法100%完成,但尽最大努力去完成这些计划!没有时间精力去学网络安全还是有点遗憾的,本科阶段我还是好好学习编程.计算机核心课程,做出自己喜欢的程序.网络安全,也是一个爱好,等到以后知识储备达到一定程度,再学习想必自会水到渠成. 原文地址:https://www.cnblogs.com/bin21st/p/10241025.html

寒假复习计划1

寒假已经快过去两个星期了,在这两个星期中,因为期末考试后期的学习较快,所以在这两星期中,以复习为主.因为第一次接触这门语言,对其了解较浅,感觉还是打好基础尽自己所能将教科书学好.在第一章中:是关于c语言程序设计概述.在第二章中:是数据类型及其运算,介绍的是变量,常量,以及C语言的数据类型.1:在进行c语言程序设计过程中,正确选择数据类型是非常重要的.C语言数据类型:整形,浮点型,字符型.2:运算符主要分为三大类.算术运算符,自增运算符和自减运算符,赋值运算符,关系运算符,逻辑运算符,条件运算符,

寒假复习计划

一共包括三周,希望能把所有的知识点走一遍. 图论中我需要复习的是网络流,复习方法就是做网络流21题. dp我需要复习的就是yyrresources里面的Ppt. 第一周结束. 字符串是回文,后缀自动机的应用. 数据结构是平衡树,动态数,以及stl的掌握. 第二周结束. 数论需要掌握的就多了...线性筛能筛哪些,欧拉函数莫比乌斯函数. 还有fft,矩阵树定理,分块,2-sat,启发式搜索,斯坦纳树, 第三周结束. 以及计算机和的种种. 原文地址:https://www.cnblogs.com/re

[转]Oracle DB SQL 计划管理

? 设置SQL 计划管理 ? 设置各种SQL 计划管理方案 SQL 计划管理:概览 ? SQL 计划管理是自动控制的SQL 计划演变. ? 优化程序可自动管理SQL 计划基线. – 仅使用已知的和经过验证的计划. ? 将自动对计划更改进行验证. – 仅继续使用可比较的或较好的计划. ? 可通过SQL 性能分析器在SQL 优化集(STS)  中预先植入重要的SQL SQL 计划管理:概览 SQL 语句的SQL 执行计划发生更改时,可能存在性能风险. SQL 计划发生更改的原因有很多,如优化程序版本

更改App名称

To?change?the?installed?application?name,?in?Xcode: 1.?Select?your?Target?on?the?left?side?under?Groups?&?Files2.?Select?File?>?Get?Info3.?Select?the?Build?tab4.?From?the?Configurations?popup,?select?All?Configurations5.?In?the?search?box,?type?in?