自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

universe_ant的博客

努力努力再努力

  • 博客(22)
  • 资源 (2)
  • 收藏
  • 关注

原创 华为机试题-合唱队

题目:计算最少出列多少位同学,使得剩下的同学排成合唱队型。说明:N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队型是指这样的一种队型:设K位同学从左到右依次编号为1,2,……,K,他们的身高分别为T1,T2,……,TK,则他们的身高满足存在i(1Ti+1>……>TK。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使

2017-07-23 17:19:43 847

转载 判断两个矩阵是否重叠

判断两个矩阵是否重叠关于如何判断两个矩阵是否重叠,这是我在实际项目开发当中曾经遇到过的问题:“判断图像中检测到的两个人脸框矩形是否有重叠部分,并计算重叠大小,从而确认是否为同一个人脸”。后来,在浏览博客时,也发现有人将这个问题当做面试题目,并进行讨论,但是,列出的代码过于繁杂,不敢恭维。所以,写下这篇博文,并贴出代码,供大家参考。前提两个矩阵的边均与x轴和y轴平行,即轴对齐的矩

2017-07-20 16:04:29 7781 2

原创 从矩阵左上角到右下角的最大值

题目:输入一个矩阵num[m][n],现在从左上角到达右下角,且只能向下或者向右走。我们要求的是路径经过的所有点的数字之和的最大值。分析:方法一、采用DFS的思想import java.util.*;public class MaxMatrixPathSum { private static int M; private static int N; private

2017-07-20 10:36:43 4873

原创 邮箱的正则表达式

邮箱的一般格式为:名称@域名。我们这里需要匹配的邮箱中名称可以包含汉字、字母、数字,域名只允许为英文和数字。例如:张三zs333@domain.com邮件名称部分:汉字在正则中表示为[\u4e00-\u9fa5]字母和数字表示为A-Za-z0-9因此邮件名称部分的正则表达式整理如下:[A-Za-z0-9\u4e00-\u9fa5]+邮件域名部

2017-07-19 22:41:35 28430 4

原创 [LeetCode] Search Insert Position

题目:搜索插入位置Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.You may assume no duplicate

2017-07-19 22:07:54 285

转载 旋转数组的二分查找

1.问题描述已知有序数组a[N],从中间某个位置k(k未知,k=-1表示整个数组有序)分开,然后将前后两部分互换,得到新的数组,在该新数组的查找元素x。如:a[]={1, 2, 5, 7, 9, 10, 15},从k=4分开,得到新数组a[]={9, 10, 15, 1, 2, 5, 7}。:二分查找算法有两个关键点:1)数组有序;2)根据当前区间的中间元素与x的大小关系,确定下次

2017-07-19 21:35:27 976

转载 git下的冲突解决

冲突的产生很多命令都可能出现冲突,但从根本上来讲,都是merge和patch(应用补丁)时产生冲突。而rebase就是重新设置基准,然后应用补丁的过程,所以也会冲突。git pull会自动merge,repo sync会自动rebase,所以git pull和repo sync也会产生冲突。当然git rebase就更不用说了。冲突的类型逻辑冲突git自动处理(合并/应用补

2017-07-19 16:39:58 446

原创 [LeetCode] Rotate Image

题目:You are given an n×n 2D matrix representing an image.Rotate the image by 90 degrees (clockwise).Follow up: Could you do this in-place?分析:要达到in-place的要求,我们采用交换的方法,顺序是左上先和左下交换,然后左上和右下交换

2017-07-19 11:45:55 221

原创 [LeetCode] Rotate List

题目:Given a list, rotate the list to the right by k places, where k is non-negative.For example, Given 1->2->3->4->5->NULL and k = 2, return4-> 5->1->2->3->NULL.分析:该题的关键在于如何找到链表后半部分

2017-07-19 11:23:14 235

原创 [LeetCode] Rotate Array

题目:Rotate an array of n elements to the right by k steps.For example, with n = 7 and k = 3, the array [1, 2, 3, 4, 5, 6, 7] is rotated to [5, 6, 7, 1, 2, 3, 4].分析:首先我们将整个数组反转,然后将前k个数字反

2017-07-19 10:39:19 226

原创 [LeetCode] Max Points on a Line

题目:Given n points on a 2D plane, find the maximum number of points that lie on the same straight line.分析:一个点加一个斜率,就可以唯一的确定一条直线。所以我们对每个点,都计算一下该点和其他点连线的斜率,这样对于这个点来说,相同斜率的直线有多少条,就意味着有多少个点在同一条直线

2017-07-18 23:57:17 217

原创 [LeetCode] Add Two Numbers

题目:You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a

2017-07-18 22:04:36 245

原创 [LeetCode] LRU Cache

题目:Design and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations: get and set.get(key) - Get the value (will always be positive) of the

2017-07-18 18:11:15 284

转载 如何设计一个秒杀系统

什么是秒杀秒杀场景一般会在电商网站举行一些活动或者节假日在12306网站上抢票时遇到。对于电商网站中一些稀缺或者特价商品,电商网站一般会在约定时间点对其进行限量销售,因为这些商品的特殊性,会吸引大量用户前来抢购,并且会在约定的时间点同时在秒杀页面进行抢购。秒杀系统场景特点秒杀时大量用户会在同一时间同时进行抢购,网站瞬时访问流量激增。秒杀一般是访问请求数量远远大于库存数量,只有少

2017-07-16 23:45:56 464

原创 冒泡排序及其优化

冒泡排序的思想是蛮力法。冒泡,顾名思义,每次选择后面一个元素(最大或者最小)冒上来,从而得到一个有序的序列。public class BubbleSort { public void bubbleSort(int[] array) { int len = array.length; for(int i = 0; i < len - 1; i++) {

2017-07-09 16:25:36 265

原创 GeoHash算法原理及实现方式

一、GeoHash特点首先,GeoHash用一个字符串表示经度和纬度两个坐标。某些情况下无法在两列上同时应用索引(例如MySQL 4之前的版本,Google App Engine的数据层等),利用GeoHash。只需要在一列上应用索引即可。其次,GeoHash表示的并不是一个点,而是一个矩形区域。比如编码wx4g0ec19,它表示的是一个矩形区域。使用者可以发布地址编码,既能表明自己位于北

2017-07-08 13:53:20 11671 2

原创 TF-IDF原理

什么是TF-IDFTF-IDF(Term Frequency-Inverse Document Frequency,词频-逆文件频率)。是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。上述引用总结就是,一

2017-07-08 11:29:46 724

转载 如果让你设计一个网络爬虫,你怎么避免陷入无限循环?

话说爬虫为什么会陷入循环呢?答案很简单,当我们重新去解析一个已经解析过的网页时,就会陷入无限循环。这意味着我们会重新访问那个网页的所有链接,然后不久后又会访问到这个网页。最简单的例子就是,网页A包含了网页B的链接,而网页B又包含了网页A的链接,那它们之间就会形成一个闭环。那么我们怎样防止访问已经访问过的页面呢?答案很简单,设置一个标志即可。整个互联网就是一个图结构,我们通常使用DFS(深度优先

2017-07-07 21:59:38 6803

转载 Spark性能优化——数据倾斜

常见的数据倾斜是怎么造成的?shuffle的时候,将各个节点上相同的key拉取到某个节点的一个task进行处理,比如按照key进行聚合或Join等操作,如果某个key对应的数量特别大的话,就会产生数据倾斜现象。数据倾斜就成为了整个task运行时间的短板。触发shuffle的常见算子:distinct、groupByKey、reduceByKey、aggregateByKey、join、co

2017-07-06 20:59:57 1392

转载 淘宝大秒系统设计详解

一些数据:大家记得2013年的小米秒杀吗?三款小米手机各11万台开卖,走的都是大秒系统,3分钟后成为双十一第一家也是最快破亿的旗舰店。经过日志统计,前端系统双十一峰值有效请求约60万以上的QPS,而后端cache的集群峰值近2000w/s,单机也近30w/s,但是真正的写时流量要小很多,当时最高下单减库存tps是红米创造,达到1500/s。热点隔离:秒杀系统设计的第一个原则就是将这种热

2017-07-05 12:16:08 3506 3

转载 微信红包后台系统可用性设计实践

微信红包业务量级的高速发展,对后台系统架构的可用性要求越来越高。在保障微信红包业务体验的前提下,红包后台系统进行了一系列高可用方面的优化设计。本次演讲介绍了微信红包后台系统的高可用实践经验,主要包括后台的set化设计、异步化设计、订单异地存储设计、存储层容灾设计与平行扩缩容等。听众可以了解到微信红包后台架构的设计细节,共同探讨高可用设计实践上遇到的问题与解决方案。微信红包介绍微信红

2017-07-04 21:28:48 5365

原创 【LintCode】最长上升序列(Longest Increasing Sequence)

题目:给定一个整数序列,找到最长上升子序列(LIS),返回LIS的长度。样例     给出[5, 4, 1, 2, 3],这个LIS是[1, 2, 3],返回3          给出[4, 2, 4, 5, 3, 7],这个LIS是[4, 4, 5, 7],返回4挑战     要求时间复杂度为O(n^2)或者O(nlogn)说明     最长上升子序列的定

2017-07-04 10:53:15 709

Spring RESTful简单实例

利用Spring对RESTful Web Service进行简单的实现demo。

2016-08-13

空空如也

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

TA关注的人

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