自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 Mac 大数据环境搭建之Hive

二、Kafka二级目录三级目录三、Hive二级目录三级目录四、HBase二级目录三级目录五、Flink二级目录三级目录⚠️Mac下/usr/local目录默认是对于Finder是隐藏,如果需要到/usr/local下去,打开Finder,然后使用command+shift+G,在弹出的目录中填写/usr/local就可以了apach:http://mirror.bit.edu.cn/apache/zookeeper:https://downloads.apache.org/z

2020-09-12 22:48:54 219

原创 Mac 安装Mysql数据库

一、MySQL安装包下载1.官网下载链接https://dev.mysql.com/downloads/mysql/我下载的是下载版本 MySQL Community Server 5.7二、MySQL安装1.点击下载的安装包,当做普通的软件安装即可,注意:保存最后用户名和密码,![在这里插入图片描述](https://img-blog.csdnimg.cn/20200912222821416.jpeg?x-oss-process=image/watermark,type_ZmFuZ3poZW5na

2020-09-12 22:39:41 160

原创 Mac 大数据环境搭建之 Hadoop

Mac大数据环境搭建Hadoop二级目录三级目录Kafka二级目录三级目录Hive二级目录三级目录HBase二级目录三级目录Flink二级目录三级目录Hadoop二级目录三级目录Kafka二级目录三级目录Hive二级目录三级目录HBase二级目录三级目录Flink二级目录三级目录⚠️Mac下/usr/local目录默认是对于Finder是隐藏,如果需要到/usr/local下去,打开Finder,然后使用command+shift+G,在弹出的目录中填写/usr/local就

2020-09-11 10:10:31 473

原创 二叉树的遍历、查找、删除

一、二叉树的概念:1、每个节点最多只有只能有两个子节点的一种称为二叉树2、二叉树的子节点分为左节点和右节点。满二叉树:如果该二叉树的所有叶子节点都在最后一层,并且节点总数=2^n-1,n为层数。完全二叉树:如果该二叉树的所有叶子节点都在最后一层或者倒数第二层,而且最后一层的叶子节点在左边连续,倒数第二层的叶子节点在右边连续,称之为完全二叉树二、二叉树的三种遍历:前序遍历: 先输出父节点,再遍历左子树和右子树中序遍历: 先遍历左子树,再输出父节点,再遍历右子树后序遍历: 先遍历左子树,再

2020-08-02 17:18:26 491

原创 赫夫曼树(哈夫曼树、霍夫曼树,最优二叉树)

赫夫曼树的实现及编码一、简介1、简介2、相关定义二、赫夫曼树算法1、算法思路2、代码实现三、赫夫曼树编码1、基本介绍2、代码实现简介:相关定义:一、简介1、简介1)给定n个权值(节点的值)作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,称这样的二叉树为 赫夫曼树(哈夫曼树、霍夫曼树,最优二叉树)。2)赫夫曼树是带权路径长度最短的树,权值较大的结点离根较近2、相关定义1、路径:从一个节点往下可以到达子节点的之间的通路;2、路径长度:通路中分支的数目。若规定跟节点所在的层

2020-08-02 16:38:37 1607

原创 查找算法——斐波那契(黄金分割法)查找算法

基本介绍:黄金分割点是指把一条线段分割为两部分,使其中一部分与全长之比等于另一部分与这部分之比。取其前三位 数字的近似值是 0.618。由于按此比例设计的造型十分美丽,因此称为黄金分割,也称为中外比。这是一个神 奇的数字,会带来意向不大的效果。斐波那契数列{1,1,2,3,5,8,13,21,34,55}发现斐波那契数列的两个相邻数的比例,无限接近黄金分割值 0.618。斐波那契分割法原理:斐波那契查找原理与前两种相似,仅仅改变了中间结点(mid)的位置,mid 不再是中间或插值得到,而是位于黄

2020-07-24 09:27:30 1079 3

原创 查找算法——插值查找

原理介绍:插值查找算法类似二分法查找,不同的是插值查找每次从自适应的mid值开始查找。插值插值的求mid索引的公式:int mid = left + (right – left) * (findVal – arr[left]) / (arr[right] – arr[left])插值查找也要求数组必须是有序数组。代码实现:package DataStructures.com.test.Search;import java.util.Arrays;/** * 插值查找算法 */pub

2020-07-24 09:01:41 138

原创 查找算法——二分查找

思路二分查找适用于在一个有序数组 arr 中查找某个值(findValue)。首先确定该数组的中间下标mid=(left+right)/2;然后让findValue与arr[mid]比较如果findValue>arr[mid],说明你要查找的数在mid的右边,需要向右查找(递归查找)。如果findValue<arr[mid],说明你要查找的数在mid的左边,需要向左查找(递归查找)。如果findValue=arr[mid],说明找到,直接返回下标mid。什么时候结束递归:1

2020-07-23 22:11:15 101

原创 (排序算法五)快速排序

基本思想:快速排序(Quicksort)是对冒泡排序的一种改进。基本思想是:通过一趟排序将要排序的数据分割成独立的两 部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排 序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。时间复杂度&&空间复杂度&&稳定性时间复杂度:O(n log n)空间复杂度 :O(log n)稳定性:不稳定图文分析:原始数组:arr=[2,10,8,3,6,4,1];代码实现:

2020-07-18 10:34:12 179

原创 (排序算法四)希尔排序

基本介绍:希尔排序是希尔(Donald Shell)于 1959 年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序。基本思想:希尔排序法基本思想 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至 1 时,整个文件恰被分成一组,算法便终止时间复杂度&&空间复杂度&&稳定性时间复杂度:O(n log n)空间复杂度 :O(1)

2020-07-17 17:45:43 177

原创 (排序算法三)基数排序

基本介绍:基数排序(radixsort)属于“分配式排序”(distributionsort),又称“桶子法”(bucketsort)或binsort,顾 名思义,它是通过键值的各个位的值,将要排序的元素分配至某些“桶”中,达到排序的作用。基数排序法是属于稳定性的排序,基数排序法的是效率高的稳定性排序法基数排序(RadixSort)是桶排序的扩展基数排序是1887年赫尔曼·何乐礼发明的。它是这样实现的:将整数按位数切割成不同的数字,然后按每个位数分别比较。基本思想:将所有待比较数据统一为

2020-07-17 11:08:47 302

原创 Java垃圾回收

标记-清除算法(Mark-Sweep)1、标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象2、在标记完成后统一回收所有被标记的对象缺点:一个是效率问题,标记和清除两个过程的效率都不高;另一个是空间问题,标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会导致以后在程序运行过程中需要分配较大对象时,无法找到足够的连续内存而不得不提前触发另一次垃圾收集动作。复制算法(Copying)1、将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。2、当这一块的内存用完了,就

2020-07-15 22:01:52 85

原创 (排序算法二)选择算法

基本介绍:选择排序也属于内部排序,是从待排序的数据中,按照指定规则选出某一元素,再按规定交换位置后达到排序的目的。排序思想:第一次从 arr[0]~arr[n-1]中选取最小值,与 arr[0]交换。第二次从 arr[1]~arr[n-1]中选取最小值,与 arr[1]交换。第三次从 arr[2]~arr[n-1]中选取最小值,与 arr[2] 交换,…。第 i 次从 arr[i-1]~arr[n-1]中选取最小值,与 arr[i-1]交换,…。第 n-1 次从 arr[n-2]~arr[n

2020-07-15 10:05:07 119

原创 (排序算法一)冒泡排序

冒泡排序基本介绍:冒泡排序的基本思想是:通过对待排序的序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使得较大的元素从前移向后,就像水底的气泡一样冒上来。时间复杂度:冒泡排序的平均时间复杂度是O(n^2);优化:在排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有交换,那就说明队列有序,排序过程中可以设置一个flag判断元素是否经过交换,从而减少不必要的比较,达到优化的目的。演示冒泡过程的例子:原始数组:int[] arr={3,9,-1,10,2

2020-07-14 21:49:30 128

原创 spark性能调优之资源分配

昨天参加面试,提问到如何根据集群的资源,对spark任务进行资源分配:spark的分配资源主要就是:executor 的个数cpu per executor(executor-cores):每个executor的cpu core数量memory per executor(executor-memory):配置每个executor的内存大小driver memory:配置driver的内存(影响不大) 等的调节配置资源:在我们在生产环境中,提交spark作业时,用的spark-submit sh

2020-07-09 11:10:06 375

原创 LeetCode203:移除链表元素(Java)

题目:删除链表中等于给定值 val 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5迭代法: public ListNode removeElements(ListNode head, int val) { //先判断链表是否为空 if (head == null) return null; //辅助节点,用来遍历链表

2020-07-05 15:44:11 85

原创 mac zsh: command not found: ll

进入用户目录:/Users/******修改 .bash_profile文件:vim .bash_profile在.bash_profile文件添加:alias ll=‘ls -alF’alias la=‘ls -A’alias l=‘ls -CF’保存.bash_profile文件,然后使其生效:source .bash_profile我们对Markdown编辑器进行了一些功...

2020-01-30 20:38:26 5827 3

空空如也

空空如也

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

TA关注的人

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