首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    leetcode 3. 无重复字符的最长子串----滑动窗口篇1,双指针篇1

    无重复字符的最长子串题解集合 滑动窗口---双指针法 哈希表优化 数组(桶)代替哈希表 动态规划 ---- 滑动窗口—双指针法 思路: 这道题主要用到思路是:滑动窗口 什么是滑动窗口?...len++; maxLength = max(maxLength, len); //然后end指针再继续后移 } return maxLength; } }; ---- 哈希表优化...temp = s[end]; //出现重复字符----注意:仅当s[start,end) 中存在s[end]时更新start //因为随着滑动窗口大小和位置的变化,可能某些数据原先已经存入了哈希表中...] = end; len++; maxLength = max(maxLength, len); } return maxLength; } }; ---- 数组(桶)代替哈希表...注意:这里选择ascall码做桶,数组大小为128.因为ascall的范围是0----127,数组内所有元素初始值为-1,当某个字符出现时,就将其的ascall码对应在数组中的位置值改成当前字符下标

    24620

    字符函数和字符串函数

    参数类型也要是int,但我们输入的不仅可以为整数(字符的ascall码值),也可以是单个字符(因为其类型差距过小,所以系统直接帮其隐式转换)。...字符转换函数 大写字母的ascall码值比小写字母小32,所以小写字母转换为大写只需要减32就行。...(存在隐式转换) 而我们也可以直接用函数去直接转换 头文件都为#include,返回值为ascall码,参数也为ascall码,不过不重要,依然可以参数为字符(有隐式转换)。...getchar和putchar getchar int getchar(void) 所以是getchar(),其作用原理是接收缓冲区的单个字符,并返回字符的ascall码值。...返回值为其字符的ascall码值(int)。 这个相比于getchar简单了些,因为getchar涉及了缓冲区,其更为复杂。

    6510

    多重表(广义表)

    但是在我们常见的某些应用,比如Excel的表格中,我们发现表并不一定是线性表,Excel中的表就明显是二维的结构 ? 那么在数据结构中,我们会使用这种广义上的表吗?...答案是会,我们也会、或者说我们也能使用这样的非线性表。其实我们早就已经在使用这样的非线性表、广义表了,那就是多维数组。不难发现二维数组就可以抽象成Excel当中的表的样子。...可能会有人发现一个小小的问题,就是为什么我又将广义表叫作多重表呢?...这其实只是一个理解角度的不同而带来的不同叫法罢了,多重表这种叫法想表达的主要意思是表中的元素可以是另一个表,而这另一个表中的元素又可以是一个表,相当于“一重又一重”的表,所以叫多重表。...对于这样的应用场景,显然需要使用到一个多重表,准确的说是一个二维的多重表,其中一维表示课程,另一维表示学生,就像下面的图。那么提到二维的多重表,我们脑海中最先浮现的应该就是二维数组了? ?

    1.1K20

    表的高级操作:倾斜表&事务表

    表的高级操作:倾斜表&事务表 Hive倾斜表(Skewed Tables) 什么是倾斜表? 对于一列或多列中出现倾斜值的表,可以创建倾斜表(Skewed Tables)来提升性能。...但如果表A是Skewed Tables,A.id=1被设置为倾斜值,那么在执行表A与表B的Join操作时,会自动进行以下优化: 将B表中id=1的数据加载到内存哈希表中,分发到A表的所有Mapper任务中...set hive.exec.dynamic.partition.mode=nonstrict; 事务表的创建 首先对事务表进行创建,首先需要是ORC表,然后进行分桶,并在表中添加属性’transactional...假设有一张表名为t,分桶数量只有2的表,那它的文件结构应该是下面这种形式。...对于事务表,可以查看所有正在进行的事务操作: SHOW TRANSACTIONS; 事务表的压缩 随着对事务表的操作累积,delta文件会越来越多,事务表的读取会遍历合并所有文件,过多的文件数会影响效率

    90220

    hive中外部表、内部表、分区表、分桶表

    文章目录 外部表 内部表 分区表 分桶表 外部表 创建数据库 create database myhive; 选择数据库 use myhive; 创建外部表 ( external) create...drop table techer; 再次查看 hadoop fs -ls /user/hive/warehouse/myhive.db/techer(数据依然存在) 内部表 创建数据库...create database myhive; 选择数据库 use myhive; 创建内部表 create table student(t_id string,t_name string) row...分桶表 是在已有的表结构之上新添加了特殊的结构 开启hive的桶表功能 set hive.enforce.bucketing=true; 设置桶(reduce)的个数 set mapreduce.job.reduces...load data local inpath ‘/export/servers/hivedatas/course.csv’ into table course_common; 在基本表中查询数据插入到分桶表

    67510

    事实表与维度表

    事实表与维度表 前文介绍了一维表和二维表的异同及相互转换 今天再来解释一下事实表与维度表 先来看下表。回忆下,这是一维表二维表?...单行记录就能锁定全部信息,个别列存在数量重复,没二话,显然是一维表 那是不是结账系统里的订单表就是这副样子?...你还别笑,不管是谁第一次接触表格,可不就这样的修改的吗 但系统里的一维表,往往有成千上万行,靠人工查找修改,无疑愚公移山 那“查找替换”呢?...这里只是打个花式比喻,不必较真) 上图可见,流水表里把大量汉字换成字母/数字编码,将对表格大小起到重要作用 修改信息时也只要在维度表定位、变更一条记录即可,而不必在流水表里进行全表扫描。...,那“事实表”也就不难理解了 事实表:表格里存储了能体现实际数据或详细数值,一般由维度编码和事实数据组成 维度表:表格里存放了具有独立属性和层次结构的数据,一般由维度编码和对应的维度说明(标签)组成 现实工作中

    2.2K40

    表与表之间关系

    可以在数据库图表中的表之间创建关系,以显示一个表中的列与另一个表中的列是如何相链接的。 在一个关系型数据库中,利用关系可以避免多余的数据。...一、表与表之间关系概述 1.1、什么是表与表之间关系 在关系型数据库中,为了避免数据冗余,我们的一些表与表之间肯定是有一定的关系。 如:学生表与老师表,部门表与员工表,用户表与权限表等。...在表设计的时候,就应该体现出来表与表之间的这种关系。 1.2、表与表之间关系分类 1.2.1、一对多关系 一对多关系是最普通的一种关系。...在这种关系中,A 表中的一行可以匹配 B 表中的多行,但是 B 表中的一行只能匹配 A 表中的一行。 只有当一个相关列是一个主键或具有唯一约束时,才能创建一对多关系。...要创建这种关系,需要定义第三个表,称为结合表,它的主键由 A 表和 B 表的外部键组成。 注意: 多对多的创建原则: 二个表与中间表创建1对多的关系。

    1.4K30
    领券