归并排序(MergeSort)递归与非递归的实现

主要关注一下非递归版本,其实就是模拟了从长度为1的子段,不断长度翻倍,一直到最后为全长的过程。】 归并的思想是:  1.将原数组首先进行两个元素为一组的排序,然后合并为四个一组,八个一组,直至合并整个数组;  2.合并两个子数组的时候,需要借助一个临时数组,用来存放当前的归并后的两个数组;  3...

2018-09-13 21:03:20

阅读数 298

评论数 0

翻转部分单向链表

题目:给定一个头结点head,以及两个整数from,to,在单链表上翻转第from个到第to个节点思路:可能存在换头的状态,例如1->2->3, from=1,to= 3,最后头结点会变,为3->2->1。所以...

2018-04-03 21:31:52

阅读数 258

评论数 0

删除链表的中间节点 / 删除链表a/b处的节点

一、删除中间节点:要求:删除中间节点的函数思路:本题并不是让你取得中间位节点,而是删除,所以关键是取得中间点的前一位。正常取中值用快慢指针,head.next,与,head.next.next。所以我们需要把慢指针前移一位,就变成了headpublic class text { publi...

2018-04-03 15:45:04

阅读数 202

评论数 0

计算1^1+2^2+3^3+4^4+5^5+……+20^20 ,大数运算(加,乘)java实现

这个题目是明显的大数运算,不能直接使用int long double 早就超出范围了,要用数组结合字符串进行处理,分别实现大数的加法和乘法,然后使用实现的加法和乘法写出来n的n次幂的实现,最后 把它们加起来首先存进来就是要用string来存贮,运算的时候按位运算,charAt(i)-'0'来取值。...

2018-03-26 14:49:30

阅读数 1285

评论数 1

打印两个有序链表的公共部分

要求:给出两个有序单链表的头结点 head1,head2,打印两个链表公共部分思路:因为已经有序,所以直接比较值大小,若1小,1后移,2小,2后移,相等,打印,二者一起后移,继续比较。public void printCommomPart(Node head1,Node head2) { ...

2018-03-25 17:13:43

阅读数 76

评论数 0

构造数组的MaxTree

要求:给定一个无序的,无重复元素的数组,生成MaxTree,要求每一个根节点处为当前最大值           时间复杂度要求O(n),空间复杂度O(n)思路:一开始第一个想法是排序,在生成二叉排序树之类的,堆排序递归之类的,但是题目要求了时间复杂度为O(n),这些方 法都超了。但是题目没有要求生...

2018-03-25 16:29:54

阅读数 134

评论数 0

滑动窗口中的最大值

要求:输入整形数组arr,与窗口大小w。窗口从左滑至最右,输出一个数组,里面每个值代表每种窗口中的最大值思路:1、剑指offer中也有,思路是维护一个双端队列作为窗口。队列中放的是元素标号!!而非元素值!!因为后续要检查者队列长度有没有超过w,直接看队列头的编号与当前比较值的编号差值即可。 2、若...

2018-03-25 13:42:28

阅读数 810

评论数 0

用一个辅助栈,来实现另一个栈的排序

要求:将一个栈按从顶到底,从大到小的顺序排序,只许额外申请一个栈来操作思路:如果stack,pop出来的元素比help栈顶小,直接压入。否则,help栈不断弹出元素,直到找到合适的地方再压入。总结:善于总结操作,不要每个情况都写一个if操作,看看内部的操作是不是都一样,一样的话可以提出来一起写。p...

2018-03-24 18:49:09

阅读数 193

评论数 0

猫狗队列

要求:已知有如下的数据结构,实现一种猫狗队列,具有:          add:将cat dog 插入队列          pollAll:将所有猫狗按插入顺序移除          pollDog:将所有Dog按插入顺序移除          pollCat:将所有Cat按插入顺序移除    ...

2018-03-24 18:28:03

阅读数 77

评论数 0

仅用递归函数,栈操作,来逆序一个栈

要求:一个栈依次压入1,2,3,4,5,将其reverse操作,栈内变成5,4,3,2,1。不借助其他数据结构思路:要取得每次的栈底元素,分别为1,2,3,4,5,再压入5,4,3,2,1。          如何取得栈底元素?递归pop,直至栈为空,返回递归最深的那个元素,其他的还要再压回去,否...

2018-03-24 17:23:54

阅读数 267

评论数 0

两个栈组成队列

要求:编写一个类,用两个栈来实现队列的基本操作,add , poll , peek思路:一个push栈,一个pop栈。注意不用每次都更新pop栈,若pop栈里还有上次push进来剩下的,就继续用,顺序是一样的,push栈里什么都不用管,相当于队尾。pop栈的栈顶为队列头总结:return最好不要放...

2018-03-24 16:27:18

阅读数 65

评论数 0

设计一个有getMin功能的栈

要求:设计一个new class,实现push,pop,getMin,复杂度O(1)思路:两个栈一起用,一个做正常栈使用(normalStack),一个用于存放最小值(minStack),minStack中随着normal中的压入一起,当它为空的时候压入第一个元素,不空的时候,只压入比栈顶元素小的...

2018-03-24 16:09:47

阅读数 38

评论数 0

单链表排序----(快排+归并+插入)

public static void quicksort(Node begin,Node end){ if(begin!=end){ Node partition=getpartition(begin,end); quic...

2018-03-22 15:42:11

阅读数 65

评论数 0

Hadoop中的数据倾斜

 在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显。主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平均值,而由于数据倾斜的原因造成map处理数据量的差异过大,使得这些平均值能代表的价值降低。Hiv...

2018-03-08 16:54:08

阅读数 253

评论数 0

Spark性能优化--数据倾斜调优与shuffle调优

一、数据倾斜发生的原理原理:在进行shuffle的时候,必须将各个节点上相同的key拉取到某个节点上的一个task来进行处理,比如按照key进行聚合或join等操作。此时如果某个key对应的数据量特别大的话,就会发生数据倾斜。数据倾斜只会发生在shuffle过程中。常用的并且可能会触发shuffl...

2018-03-08 16:52:37

阅读数 128

评论数 0

Spark内存管理机制

a.      Spark静态内存管理在Spark 1.5版本及以前,Spark采用静态内存管理模型。对于一个Executor,对应的JVM Heap内存主要由三个独立的区块组成,如图所示。静态内存管理​Storage Memory。这片内存区域是为了解决对RDD进行的Cache缓存(通过程序中...

2018-03-08 16:35:30

阅读数 182

评论数 0

对比 Hadoop MapReduce 和 Spark 的 Shuffle 过程

如果熟悉 Hadoop MapReduce 中的 shuffle 过程,可能会按照 MapReduce 的思路去想象 Spark 的 shuffle 过程。然而,它们之间有一些区别和联系。从 high-level 的角度来看,两者并没有大的差别。 都是将 mapper(Spark 里是 Shuff...

2018-03-08 16:12:06

阅读数 411

评论数 0

HTTP与HTTPS

1 从HTTP说起 HTTP是一个应用层通信协议,用于从WWW服务器传输超文本到本地浏览器,传输的数据都是未加密的,内容可能会被窃听。 一种解决方案是对通信报文的内容进行加密,对通信报文内容的加密仅仅是达到让攻击者难以破解的目的,但是加密后的报文本身还是能够被截获;另一种加密方式是将通信加密,...

2018-01-24 22:29:21

阅读数 403

评论数 2

Hadoop性能调优

转载自:http://blog.csdn.net/yzhang6_10/article/details/53151096 Hadoop性能调优 1. 简介 Hadoop性能调优不仅涉及Hadoop本身的性能调优,还涉及更底层的硬件、操作系统和Java虚拟机等系统的调优。具体包括以下四...

2017-11-23 20:17:46

阅读数 688

评论数 0

Hadoop二次排序及MapReduce处理流程实例详解

一、概述 MapReduce框架对处理结果的输出会根据key值进行默认的排序,这个默认排序可以满足一部分需求,但是也是十分有限的,在我们实际的需求当中,往往有要对reduce输出结果进行二次排序的需求。对于二次排序的实现,网络上已经有很多人分享过了,但是对二次排序的实现原理及整个MapReduc...

2017-11-23 15:49:33

阅读数 139

评论数 0

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