- 博客(28)
- 资源 (3)
- 收藏
- 关注
原创 堆排序
大(小)根堆特性堆排序中小根堆对应降序,大根堆对应升序(以下所有以大根堆为例)。是一种完全二叉树(叶子节点层级差不大于1,且最后一层节点靠左排列,但不一定是满二叉树)。父节点值大于两个子节点的值,所以二叉树的根为最大值。排序思想堆排序是选择排序的一种改进,以O(NlogN)的时间复杂度构建出大根堆(最大值位于堆顶)。然后每次取堆顶的最大值放入数组尾端,调整剩余二叉树,使其重新成为大根堆,
2017-02-25 13:45:29
587
原创 LeetCode 400. Nth Digit
题目:Find the nth digit of the infinite integer sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …n is positive and will fit within the range of a 32-bit signed integer (n < 231).Input:11Output:0Explanat
2017-02-01 11:00:51
440
原创 LeetCode 460. LFU Cache
题目:Design and implement a data structure for Least Frequently Used (LFU) cache. It should support the following operations: get and put.get(key) - Get the value (will always be positive) of the key i
2017-01-28 18:04:37
1866
1
原创 LeetCode 449. Serialize and Deserialize BST
题目:Serialization is the process of converting a data structure or object into a sequence of bits so that it can be stored in a file or memory buffer, or transmitted across a network connection link to
2017-01-26 16:36:46
646
原创 LeetCode 141. Linked List Cycle
题目:Given a linked list, determine if it has a cycle in it.Follow up: Can you solve it without using extra space? 思路:不能使用类似Set的办法,空间太大,只能使用两个指针发现循环。我的做法,一个指针步长为1,另一个步长为2,不难证明如果有环一定可以相遇。优点不改变链表的原式结构,但两
2017-01-21 14:03:52
262
转载 蒙特卡罗方法入门(阮一峰)
本文通过五个例子,介绍蒙特卡罗方法(Monte Carlo Method)。 原文出处:阮一峰的日志(@ruanyf)http://blog.jobbole.com/88465/本文通过五个例子,介绍蒙特卡罗方法(Monte Carlo Method)。 一、概述蒙特卡罗方法是一种计算方法。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。它非常强大和灵活,又相当简单易懂,很容易实现
2017-01-21 13:44:33
575
原创 UDF简单实验
目的编写Hive的UDF函数,实现对数字取绝对值的操作。步骤目录使用NetBeans构建maven-java项目编写UDF程序打jar包将jar包上传到HDFS编写Hive脚本使用NetBeans构建maven-java项目New Project>Maven>Java Application使用Maven方便依赖包的导入编写UDF程序package com.mycompany.
2017-01-09 11:04:19
802
原创 Hive Join详解
Join 语法:join_table: table_reference JOIN table_factor [join_condition]//内连接 | table_reference {LEFT|RIGHT|FULL} [OUTER] JOIN table_reference join_condition//外连接 | table_reference LEFT SEMI JOI
2017-01-09 10:56:06
805
原创 LeetCode 18. 4Sum
题目:Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.Note: The solution s
2017-01-09 00:17:09
211
原创 LeetCode 15. 3Sum
题目:Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must not contain d
2017-01-07 22:41:29
271
原创 LeetCode 10. Regular Expression Matching
题目:Implement regular expression matching with support for ‘.’ and ‘*’.'.' Matches any single character.'*' Matches zero or more of the preceding element.The matching should cover the entire i
2017-01-07 21:54:29
245
原创 SSH原理和应用
一、SSH的概念全名SecureShell,是一项建立在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境。传统的网络服务程序,如rsh、FTP、POP和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。SSH之另一项优点为其传输的数据可以是经过压缩的,
2016-10-29 17:32:01
884
原创 java web(ubuntu+Glassfish+Postgres解决中文插库乱码)
java web部署文档一、安装步骤基本安装: - JDK & JRE - 应用服务器(Glassfish) - 数据库(Postgres)docker安装二、配置步骤配置分成两部分组成,分别是环境配置与系统应用配置。绝大部分的配置包含在安装过程中进行,即在安装章节包含了配置和测试的部分。对于需要额外配置的部分和流程,记录在此章节中。三、
2016-10-22 19:32:29
568
原创 滴滴笔试题
题目一家餐馆,有m张桌子,每张桌子容纳的人数为ai。来了n波顾客,每波人数为bi,消费为ci。不同波客人不可以拼桌。例子 m=3,n=4,a=[2,2,3],b=[(2,30),(2,50),(2,10),(3,40)]思路贪婪:按照人数分别将桌子和客人排序。从最小的桌子开始,查找能坐下的人数中花费最高的。然后将该波人从数据中移除。继续分析下一张桌子。 桌子容纳人数 最大收入 2
2016-09-07 10:31:10
951
原创 全排列java实现
昨天听室友说面试问到了全排列的问题,今天上午就试着写了一下。最基础版,应该还有很多优化空间,欢迎指出。import java.util.HashSet;import java.util.Set;/** * * @author lqshanshuo */public class Permutation { static String[] str_arr = {"a","b","c"
2016-08-10 10:34:00
848
原创 一个倒排索引(inverted index)的python实现
一个倒排索引(inverted index)的python实现使用spider.py抓取了10篇中英双语安徒生童话并存在”documents_cn”目录下使用inverted_index_cn.py对”documents_cn”目录下文档建立倒排索引查询 “第三根火柴”, “kindled third”,”kindled match”的位置获得结果如下 注:search函数先搜索词组的情况(
2016-02-01 22:35:26
15091
原创 Python 编码踩坑小记
#coding:utf-8print repr(u"我爱你") #u'\u6211\u7231\u4f60'print repr(u'\u6211\u7231\u4f60') #u'\u6211\u7231\u4f60'print repr(u"我爱你".encode('utf-8')) #'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0'#c
2015-11-25 21:05:05
1050
翻译 Kernighan/Lin Algorithm[翻译]
原文链接算法介绍Kernighan-Lin是一个简单的局部下降算法,该算法可以很好地改善已获得的图分割的效果。它很简洁的只使用边的权重来表示。算法描述我们将初始图G=(N,E,We)分成相等的两部分:|A|=|B|。令w(e)=w(i,j)代表e(i,j)的权值,不存在边即为0。我们的目标是找出相同数量的子集X in A和Y in B,将X和Y交换来减少AB两社区间边连接的开销。更精确的,我们令T
2015-11-07 17:16:38
3779
原创 最优化方法(Optimization methods)中的Modularity
Modularity介绍2006年Newman在文献Modularity and community structure in networks中提出了modularity的概念,并将其作为一种在网络和图中使用的度量方法。它可以衡量社区划分的好坏程度。modularity高,代表着社区内节点联系紧密,而社区间连接稀疏。modularity经常被用在社区发现的最优化算法中。然而modularit
2015-11-06 21:19:27
3297
原创 端口映射及动态域名服务
端口映射1.端口映射简介端口映射是NAT的一种,将外网主机的IP地址的一个端口映射到内网中一台机器,提供相应的服务。当用户访问该IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上。2.动态端口映射分类动态端口映射:内网中的一台电脑要访问网站,会向NAT网关发送数据包,包头中包括对方网站IP、端口和本机IP、端口,NAT网关会把本机IP、端口替换成自己的公网IP、一个未使用的端口,并
2015-08-31 11:46:14
3096
原创 VMware Workstation 11安装mac OS X 10.10
准备工作vmware workstation 11(序列号 1F04Z-6D111-7Z029-AV0Q4-3AEH8 永久版)unlocker 204(for OS X 插件补丁) Mac OS X 10.10镜像以上文件下载链接:http://pan.baidu.com/s/1dDyKSX7 密码:ez75具体流程安装vmware workstation 11虚拟机打开任务管理器,
2015-08-29 22:18:40
1868
原创 虚拟机网络模式
简介一般来说,虚拟机有如下三种网络模式:bridged(桥接模式)NAT(网络地址转换模式)host-only(主机模式)bridged桥接模式是典型安装vmware后的默认网络模式,本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接。本模式下虚拟机拥有唯一的网络标识。例如,在TCP/IP网络下,虚拟机需要有自己的ip地址。此时虚拟机可以像物理机一样访问网络中的其他机器(当然ip地址
2015-08-28 22:37:09
396
原创 AngularJS学习笔记
一:特点及优点数据双向绑定二:直接上手几个重要的文件:myapp/index.html //主页面,包括所有页面共有的header,footer,导航栏等,有一个使用ng-view标签占位的<div></div>接受局部刷新.myapp/index-app.js //控制整个工程的js文件.注意:1所有的controller都需要在此文件内注册才可以使用;2路由信息需在此文件中写明m
2015-07-27 17:02:50
460
原创 R语言学习笔记
语法笔记 使用R语言iGraph包绘制无向点线图 con <- matrix(scan(“dividedmap6”, what=character(), n=1000), , 2, byrow = TRUE)//读入文件前1000行,生成两列的矩阵 library(igraph) g <- graph.edgelist(con, directed=F)//无向图 plot(
2015-04-27 16:13:24
1884
原创 总结集线器、网桥、交换机、路由器区别和一些ip地址知识
集线器:工作在物理层,简单转发比特,扩大了碰撞域,利用率为1/n(n为连接主机数)。有串音回波抵消(发出的强信号不影响收到的弱信号),比特转发前再生整形,重定时功能。物理上构成星型网,逻辑上为总线网,使用CSMA/CD协议。 网桥:工作在数据链路层,隔离碰撞域,不隔离广播域,存储转发,每个接口连接一个网段。透明网桥即插即用,为避免都圈子使用生成树算法。源路由网桥不透明,但可选择最佳路由。 交换机
2015-03-22 23:29:21
2491
原创 Java聊天室
我的第一篇博客!过去的一周,应老师要求,用java编写了一个聊天室的程序,今天上午刚刚验收结束,自己对这个程序还算满意。本科阶段没有养成做完项目写报告写博客的好习惯,现在要读研了,秉承着助人为乐和帮助自己梳理思绪的初衷,决定以后多写些博客记录一下自己的学习和生活。废话不多说了,直接上干货。程序实现了登陆、退出、单聊、群聊、预定义文字表情、在线用户查询、历史记录查询等功能,有命令行和图形界面两个版本,
2015-03-17 19:54:55
1505
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人