自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

isea_you's blog

技术成长,循序渐进

  • 博客(132)
  • 收藏
  • 关注

原创 ChatGPT入门必知必会

关于ChatGPT内容,你必须要了解的内容,和一些学习材料

2023-04-13 21:48:53 8870 1

原创 被CTO推荐的SQL总结

写SQL很多年后,做的小总结

2022-09-29 22:53:47 3024 2

原创 impala 执行计划详解

impala 执行计划详细解读

2022-07-23 13:18:13 2883

原创 Mac M1 实现 LL 命令

Mac M1的 LL 命令的实现

2022-07-13 21:37:41 858

原创 关于MySQL,PostgreSQL,Impala,Spark的执行计划-总结

impala,mysql,spark,postgresql执行计划总结

2022-05-09 21:24:49 1124

原创 SCD-缓慢变化维-拉链表

缓慢变化维的几种处理方式

2022-05-02 01:55:24 1077 2

原创 设计数据密集型应用(六),DDIA

《设计数据密集型应用》第六部分

2022-04-25 19:20:05 427

原创 设计数据密集型应用(五),DDIA

《设计数据密集型应用》读书笔记,第五部分

2022-04-24 20:53:10 480

原创 设计数据密集型应用(四),DDIA

《设计数据密集型应用》读书笔记,第四部分

2022-04-23 11:54:04 1089

原创 设计数据密集型应用(三),DDIA,事务

五、第7章节-事务5.1-事务的起源很早就接触事务这个概念,关于事务网上的文章动不动就把转账的的例子拿出来讲,坑的时候有的压根就没有讲明白,事务的概念事务要不就执行成功,要不执行失败,只有这2种状态也背的烂熟,也知道事务的4大特性ACID (原子性、一致性、隔离性、持久性),但是这么些年从来没有思考过:为什么要有事务?他解决了什么样子的问题/痛点?那么我们带着这个问题来回顾一下事务起源:上图中有一个名为猪小明程序员抱着自己的电脑在疯狂的写代码(开发应用程序),其中应用程序需要透过网络在数据库中存放数

2022-04-22 12:27:53 854

原创 设计数据密集型应用(二),DDIA

《设计数据密集型应用》读书笔记第二部分

2022-04-21 12:48:16 705

原创 设计数据密集型应用(一),DDIA

数据密集型应用系统设计

2022-04-20 21:33:54 7435 1

原创 单机和分布式下的关联算法(Hash Join,SNLJ,INLJ,BKA,Merge Join)

单机和分布式下的关联算法(Hash Join,SNLJ,INLJ,BKA,Merge Join)

2022-04-07 22:50:49 1202

原创 数据开发利器DataGrip

入职一家新的公司,数据团队有8个人,刚开始就我一个人在用,两个月之后,整个小组都在用,这就是DataGrip的魅力。DataGrip 支持几乎所有主流的关系数据库产品,如 DB2、Derby、H2、MySQL、Oracle、PostgreSQL、SQL Server、Sqllite 及 Sybase ,更有魅力的支持Hive,clickhouse等,这个对大数据方向的小伙伴就nice了。快捷键快捷键 作用 Ctrl+Alt+Shift+S 管理数据库连接 双击Shift .

2021-06-27 11:38:51 862

原创 Hive left join on and where 对结果集的影响 + group by 和 row_number 的执行顺序

some summary about hivesql 过程select * from table 历经下面几个过程:解析:将SQL字符串解析成语法树AST,判断表示否存在、字段是否正确编译:将AST编译成逻辑执行计划优化:对执行计划进行优化执行:逻辑执行计划转为物理执行计划,MR/SparkHive 仅仅支持等值连接,on a.id >= b.id 不允许,on a.id = b.id 是可以的。...

2021-06-14 10:02:02 3345

原创 git 常用命令(git status,git statsh,git commit,git pull,git merge,git push origin,git add,git checkout.)

Git小总结QAgit 中有几个区域,各自的目的???? 工作区:修改过的内容都会进入工作区???? 暂存区:git add 可以将工作区的file添加到本地仓库???? 本地仓库:git commit -m ‘**’ 会将暂存区的file提交到本地仓库4️⃣ 远程仓库:git push origin master(分支名称) 将本地仓库推到远程仓库git status的作用显示工作区,暂存区,本地仓库,远程仓库之间的文件状态;如:Your branch is up to

2021-06-06 09:56:59 1108

原创 git 基础命令

曾经听过一句话:Git命令满天飞,是我比较佩服的一个大佬形容自己的,我也幻想过Git满天飞,而且我还想要实现过,but后来我发现,其实掌握必要且实用的Git命令就已经够用了,没必要满天飞,满地走就行了。git的教程也特别多,一搜一堆,下面我就想说说我想说的git。这篇blog,不是一个git教程,只说最常用的,最有用的、也就是关于git的必要知识。在初学git的时候,更建议找一个比较全面的教...

2020-04-07 11:23:49 217

原创 Shell 基础(变量设置,awk工具)

目录概述变量常用 (vim + awk)概述Shell从诞生之初,就和普通的PC用户无缘了,工程师应该会喜欢Shell,maybe是这个样子的。shell 提供了你和操作系统Linux之间的通讯方式。shell的工作方式有两种 REPL 写成脚本(命令集合),然后在执行 你在终端写出的shell命令,计算机是无法直接理解的,需要shell解释器来完成...

2020-02-19 20:23:38 2540 2

原创 认识Java反射

我学习学习编程技术最大的体会,就是感觉像是在吃热豆腐,慢慢来,是豆腐总会凉凉的。为什么要有反射?最直接的原因是,在java之后出现了动态的语言,如python,js,这种动态的语言的类型的检查是在运行的时候做的,程序在运行的时候,能够改变程序结构或是变量类型,java学习别的语言的动态性,引入了反射机制,使得java成为了一门准动态语言,使得java在编程的时候有更大的灵活性,如spr...

2019-08-30 08:18:33 300 1

原创 安装Docker时候踩的坑

我是在CentOS上安装的Docker,Docker对安装环境有限制,我CentOS是6.8符合要求,64位,内核也符合要求,我的安装命令如下:sudo yum install -y epel-releasesudoyum install -y docker-io结果就出现了:No package docker-io available.错误:无须任何处理网上翻...

2019-06-02 20:09:47 308

原创 大数据技术——从海量数据的存储到海量数据的计算

目录海量数据的存储海量数据的计算大数据处理的主要应用场景前言:大数据技术诞生之初,就是为了解决海量数据的存储和计算问题。大数据起源于Google。Google是当时世界上(尽管目前也是)最大的搜索引擎公司,由于互联网时代的到来,Google积累了海量的用户,海量用户意味着海量的数据,谷歌需要将这些数据保存下来,传统的保存数据的方式已经满足不了Google的需求了。首...

2019-05-05 16:14:02 4218

原创 云计算,大数据,人工智能

自己本身的方向并不是云计算,但在软件开发这个行业,很多工程师并不是单纯只研究自己的方向,即便不能切实的应用某项技术,前去了解也是一件很有意思的事情。在很多的公司,做为一个技术从业者,如果技术面很窄,可能会被同时diss,慢慢地,可能会没有朋友(有点严重了哈)。最近了解了下云计算的一些知识,接下来谈谈我对于云计算的理解:在了解云计算技术之前,先要知道云计算的目标:云计算在设计之初,主要是为......

2019-03-26 18:49:04 20500 8

原创 第三十题:是否含有以某个字符串为前缀的字符串(前缀树问题)

题目要求:设计一种结构 ,该结构除了能够存储字符串之外,还要使得该结构能够满足下面的功能:①:是否含有以某一个字符串为前缀的字符串②:存储的字符串中,是否含有某个字符串③:有多少个字符串以某一个字符串为前缀实现代码:package com.isea.ds;public class TrieTree { // 实现前缀树的时候,一定不要把字母放在了节点里,...

2019-03-11 13:13:28 509

原创 第二十九题:LeetCode203号问题,删除链表中的指定元素(Java)

题目:从具有值val的整数的链接列表中删除所有元素。例:输入: 1-> 2-> 6-> 3-> 4-> 5-> 6,val = 6输出: 1-> 2-> 3-> 4-> 5Solution代码:/** * Definition for singly-linked list. * public class ...

2019-01-30 16:29:59 325

原创 第二十八题:如何判断一棵树是一颗全完二叉树?(Java)

题目要求:如标题: 分析:对于二叉树中的任意一个节点,层序遍历二叉树①:如果只有右孩子,没有左孩子,那么该树一定不是完全二叉树;②:第一次发现一个节点有如果左没右,或者左右都没有,那么其后的每一个节点都必须是叶子节点,否则一定不是一颗完全二叉树;package com.isea.brush.tree;import java.util.LinkedList;impor...

2019-01-17 11:38:56 449

原创 第二十七题:如何判断一颗树是否是二分搜索树?(Java)

题目要求:如标题:假设该树没有重复的节点分析: 所谓的二分搜索树,就是任意一个节点满足,大于左孩子,小于右孩子。所以二分搜索树满足这样的一个性质:中序遍历之后的二叉树是顺序的。所以我们这里实现的思路是,改写二叉树的非递归版本的,来校验当前值和前一个值的大小关系。代码实现:package com.isea.brush.tree;import java.util.Sta...

2019-01-17 10:02:12 800

原创 第二十六题:判断一颗二叉树是不是平衡二叉树(Java)

题目要求:如标题:什么是平衡二叉树?任意节点的左子树和右子树的高度差不超过1,空数也是一颗平衡二叉树。要求:二叉树的节点的个数是N,时间复杂度是O(N)代码实现与分析:一个树是平衡二叉树的条件是,每一个子树都是平衡二叉树。对于node这颗子树,在何时是一颗平衡二叉树?①:左子树不平衡,false②:右子树不平衡,false③:左子树平衡,拿到左子树的高度h1...

2019-01-16 21:25:59 799

原创 第二十五题:二叉树的序列化和反序列化(Java)

题目要求:二叉树的数的序列化和反序列话,二叉树实际是存储在内存中的,一旦断电或者是关机,二叉树的数据就会在内存中丢失。所以我们需要将二叉树的数据保存下来,这个过程叫做持久化或者序列化;将二叉树的数据保存到了磁盘之后,还需要将磁盘中的二叉树的数据加载到内存中去,这过程叫做反序列化。反序列的标准是:如何序列化的,就怎么反序列话。代码实现: package com.isea.bru...

2019-01-16 20:17:56 1513 1

原创 第二十四题:在二叉树中找到一个节点的后继节点和前驱节点(Java)

题目要求:如标题(Node除了left,right,还有一个指向父节点的指针)什么前驱和后继节点? 在二叉树的中序遍历中,一个节点的前一个节点,就是该节点的前驱,一个节点的下一个节点就是该节点的后继。如何寻找一个节点的前驱?如果该节点有左子树,那么该节点的前驱就是该节点左子树中最右边的节点;如果该节点没有左子树,从当前节点开始往上寻找,直到当前节点是其父节点的右孩子,那么这个父节...

2019-01-16 19:12:11 1278 2

原创 第二十三题:如何较为直观的打印一个二叉树(Java)

 题目要求如标题代码实现:^  表示左上方距离最近的是父节点;v 表示距离左下方最近的值是跟节点package com.isea.brush.tree;public class PrintBinaryTree { public static class Node { public int value; public Node lef...

2019-01-16 17:05:16 465

原创 第十三题:非递归方法实现二叉树的前序,中序,后序,层序遍历(Java)

题目:请使用非递归的方法,实现二叉树的前序,中序,后序,层序遍历代码实现:附带了递归的实现,即使用递归来测试非递归的实现是否正确。package com.isea.brush.tree;import java.util.LinkedList;import java.util.Stack;public class BinaryTree { private No...

2019-01-16 16:48:15 420

原创 第二十一题:实现对一个带有随机指针的链表的拷贝(Java)

题目要求:一个链表除了带有next指针指向下一个元素之外,还有另外一个指针rand,该指针随机指向链表中的任意一个节点,现在要求对这个链表进行深度的拷贝,返回拷贝了之后的链表的头结点。思路分析与代码实现: package com.isea.brush;import java.util.HashMap;/** * 实现对一个带有随机节点的链表的拷贝 * 准备一个辅助的映...

2019-01-16 09:28:42 259

原创 第二十题:链表的荷兰国旗问题(Java)

题目要求将一个链表,按照某一个标准,小于该标准的放置在链表的前面,等于的放置在中间,大于的放置在后面,不要求稳定性。实现思路:在前面第十五题:荷兰国旗问题中,我们已经解决了类似的问题,我们实现的思路是,遍历整个链表,然后将每一个节点放置到数组中去,然后使用荷兰国旗问题的思路来解决,在数组荷兰国旗话之后,在遍历数组,将数组转为链表,在笔试中,我们应该使用这样的解决方案。代码实现:...

2019-01-15 21:18:10 410

原创 第十九题:如何使用队列实现栈结构(Java)

题目要求:如标题代码实现与分析:在图的深度优先遍历中,是需要使用栈结构来实现的,在面试中可能会被问到,如何仅用队列结构来实现图的深度优先遍历?package com.isea.brush;import java.util.LinkedList;import java.util.Queue;/** * 使用队列结构实现栈 * 实现思路: * 使用两个队列;dat...

2019-01-14 23:47:20 430

原创 第十八题:使用数组实现固定长度的队列(Java)

 题目要求:如标题代码分析与实现: package com.isea.brush;/** * 使用数组实现长度队列结构 * start:队首,拿取一个数,要存放的位置 * end: 队尾,新加一个元素,应该放在哪个位置,只要end到了数组的长度-1,就回到开头 * size: 队列中的元素的个数 * 用来约束start和end,只要size没有到达数组的长度,就可以...

2019-01-14 22:51:56 675

原创 第十七题:使用数组结构实现大小固定栈(Java)

题目要求:如标题代码实现:package com.isea.brush;/** * 使用数组结构实现固定长度的栈结构 * 实现思路:index位置表示的是如果要入栈,元素应该存放数据的位置 */public class ArrayStack { private Integer data[]; private int index; public...

2019-01-14 21:28:20 253

原创 第十六题:求无序数组排好序后相邻两数的最大差值(Java)

题目要求:给定一个无序的数组,求该数组排好序后的相邻两个数的最大差值,要求时间复杂度为O(n),且不能使用非基于比较的排序,比如:3,1,6,2,7 ,排序序之后是,1,2,3,6,7。两个数的最大差值是 3。代码实现与分析:这个问题实现思路非常的器巧妙,借用了桶的概念,但是没有进行桶排序。package com.isea.brush;/** * 求相邻两个数的最大差值...

2019-01-14 21:07:28 855

原创 第十五题:荷兰国旗问题(java)

题目要求:给定一个数组,将这个数组,按照num划分,小于num的元素放在数组的左边,等于num的数放在数组的中间,大于num的数放在数组的右边。要求时间复杂度是O(N),额外空间复杂度是O(1)代码实现:package com.isea.brush;/** * 荷兰国旗问题: * 解题思路:使用两个变量(指针),less 和more,less表示小于num的范围,more...

2019-01-14 19:30:58 320

原创 第十四题:小和问题(Java)

题目:小和问题:在一个数组中,每一个数左边比当前小的数累加起来,叫做这数组的小和,求一个数组的小和,如:【1,3,4,2,5】1左边比1 小的数,没有3左边比3 小的数,14左边比4 小的数,1,32左边比2小的数,15左边比5小的数,1,3,4,2所以小和是,1 + 1 + 1 + 2 + 3 + 3, + 4 = 16 代码实现与分析:packag...

2019-01-14 18:49:50 407

原创 第十二题:使用递归完成二叉树的前序,中序,后续遍历(Java实现)

题目:使用递归完成二叉树的前序,中序遍历,后续遍历代码实现:package com.isea.brush.tree;public class BinaryTree { private Node head; private int size; private static class Node { private int data; ...

2019-01-11 16:47:23 250

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除