自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小旋锋 的博客

专注于大数据,Java后端类技术分享。记录一名平凡的程序猿的技术成长之路

  • 博客(245)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 【上外青年】人物 ‖ 何晗:天才都是异类

偶尔发现一个博客,如下 码农场 - 放牧代码和思想 专注自然语言处理、机器学习算法 http://www.hankcs.com/ 有时候会想,为什么有些人趋于平凡,而有些人似乎注定不平凡。 人与人之间的根本区别是什么呢? 算法初心者,海外修业中。 白天生存,晚上生活。 没有任何光鲜的经历,也没有任何过去的回忆。无论是互联网还是现实中,都不会保留任何“过去”的东西

2017-09-11 14:28:08 5867 4

原创 堆 相关笔试题

牛客网 专项练习题(101,88,46,70,34,39,45,58,66,10)是堆()A. 对B. 错 正确答案: A 最小堆:直接父节点比两个子节点都小。 最大堆:直接父节点比两个子节点都大。 本题写下来,是最大堆。下列数据结构不是多型数据类型的是()A. 堆B. 栈C. 字符串D. 有向图 正确答案: C 多型就是数据元素的类型不确定,

2017-09-11 10:21:18 1727

原创 哈希表 相关笔试题

牛客网专项练习题哈希表的平均查找长度与处理冲突的方法无关()A. 对B. 错 正确答案: B [摘抄] 哈希表在查找过程中进行比较的关键字个数取决于哈希函数,处理冲突的方法和哈希表的装填因子,哈希表的装填因子标志哈希表的装满程度,与哈希表的长度有直接联系。有B+Tree/Hash_Map/STL Map三种数据结构。对于内存中数据,查找性能较好的数据结构是(),对于磁盘中数据,

2017-09-11 09:43:19 19270 1

原创 京东笔试:括号匹配 ---- 逆向思维题

一模一样的题 !!! http://www.cnblogs.com/tbt123/p/6920729.html题目:有一个合法的字符串,合法是指左括号与右括号全部能配对,现在每次将这个序列第一个左括号删去,在将任意一个右括号删去,每次删去后的序列必须合法,求有多少种方法,答案对10000000007。输入:一个合法括号序列。输出:方案数。样例1:Input:()()()()Output:1样

2017-09-08 21:38:42 1447

原创 搜狗2016研发工程师笔试题(二)

搜狗2016研发工程师笔试题(二) https://www.nowcoder.com/test/980452/summary已知i为整数,d[i]表示i的正约数的和,已知10000除以1到10000所有整数的余数和为17743986,求1<=i<=10000范围内所有d(i)的和的末4位()智力题A. 1774B. 3986C. 6014D. 8225 正确答案: C

2017-09-08 11:04:31 1159

原创 2016CVTE校招在线笔试题

2016CVTE校招在线笔试题 https://www.nowcoder.com/test/458195/summary以下说法正确的有()A. 多个进程操作同一个文件时,应该要考虑到文件的一致性问题B. 可通过文件在不同进程间进行数据传递和共享C. 可以通过全局变量在不同进程间传递数据D. 一个进程可以访问到所有物理内存空间 正确答案: A B 进程间通信靠:管道

2017-09-07 23:21:49 22927 2

原创 搜狗2016研发工程师笔试题

搜狗2016研发工程师笔试题 https://www.nowcoder.com/test/961497/summary1. 缓存系统中的主要使用的数据结构是() 缓存系统中主要是:Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它 通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基

2017-09-07 14:52:37 2322

原创 面向对象设计原则 - 学习笔记

设计模式 刘伟 http://blog.csdn.net/lovelion 在线书籍 https://gof.quanke.name/对于面向对象软件系统的设计而言,在支持可维护性的同时,提高系统的可复用性是一个至关重要的问题,如何同时提高一个软件系统的可维护性和可复用性是面向对象设计需要解决的核心问题之一。面向对象设计原则为支持可维护性复用而诞生,这些原则蕴含在很多设计

2017-09-06 21:42:55 739

原创 设计模式概述-学习笔记

设计模式 刘伟 http://blog.csdn.net/lovelion 在线书籍 https://gof.quanke.name/模式是在特定环境下人们解决某类重复出现问题的一套成功或有效的解决方案。 A pattern is a successful or efficient solution to a recurring problem within a context软件模

2017-09-06 13:02:02 553

原创 红黑树

3.3 Balanced Search Trees http://algs4.cs.princeton.edu/33balanced//****************************************************************************** * Compilation: javac RedBlackBST.java * Exe

2017-09-06 00:16:06 350

转载 TCP协议三次握手过程分析

转载自:http://www.cnblogs.com/rootq/articles/1377355.htmlTCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) P

2017-09-05 22:03:40 349

转载 【基础网络】TCP与UDP 的区别

转载自:http://www.cnblogs.com/huxiaoyun90/p/4755164.htmlTCP协议与UDP协议的区别首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协

2017-09-05 21:22:48 391

原创 linux高级编程 - 前言&内存管理

杨强 linux高级编程 day01 am程序员的基本素养:进程管理、内存管理、文件系统管理、IO、(设备驱动)应用:数据库、网络、UI、openGL、shell等等内存管理 层次: 1. 硬件层次:内存结构管理(段页管理) 2. 内核层次:内存映射、堆扩展 3. 语言层次:c语言 malloc c++:new 4. 数据结构层次:STL、智能指针

2017-09-04 01:02:43 491

原创 3.2 二叉查找树

3.2 Binary Search Trees http://algs4.cs.princeton.edu/32bst/基本实现数据表示查找 插入 递归最大键最小键向上取整向下取整 选择操作 删除最大值和最小值 删除操作 范围查找/**************************************************************************

2017-09-03 22:15:58 287

原创 3.1符号表

3.1 Elementary Symbol Tables http://algs4.cs.princeton.edu/31elementary/定义:符号表是一种存储键值对的数据结构,支持两种操作:插入(put),查找(get)符号表(或称字典)最主要的目的就是将一个键和值联系起来。用例能够将一个键值对插入符号表并希望在之后能够从符号表的所有键值对中按照键直接找到对应的值。API一种简单的

2017-09-03 20:02:18 500

原创 5.1 键索引计数法

一、思想 适用于小整数键的简单排序方法;假设数组a[]中的每个元素都保存了一个名字和一个组号,其中组号在0到R-1之间,以组号为键进行分组排序; 二、步骤 频率统计:使用int数组计算每个键出现的频率; 将频率转换成索引:使用count[]来计算每个键在排序结果中的起始位置; 数据分类:将count[]数组转换成一张索引表后,将所有元素移动到一个辅助数组aux[]中以进行排序;

2017-09-03 16:42:05 823

原创 站队问题、分糖果问题

站队问题分糖果站队问题n个人站队,他们的编号依次从1到n,要求编号为a的人必须在编号为b的人的左边,但不要求一定相邻,请问共有多少种排法?第二问如果要求a必须在b的左边,并且一定要相邻,请问一共有多少种排法?给定人数n及两个人的编号a和b,请返回一个两个元素的数组,其中两个元素依次为两个问题的答案。保证人数小于等于10。测试样例: 7,1,2 返回:[2520,720]我的提交# -*- co

2017-09-03 10:39:26 905

原创 交换、比较

交换比较交换请编写一个算法,不用任何额外变量交换两个整数的值。给定一个数组num,其中包含两个值,请不用任何额外变量交换这两个值,并将交换后的数组返回。测试样例: [1,2] 返回:[2,1]# -*- coding:utf-8 -*-class Swap: def getSwap(self, num): # write code here num[0]

2017-09-02 23:51:00 452

原创 折纸、寻找错误结点

请把纸条竖着放在桌⼦上,然后从纸条的下边向上⽅对折,压出折痕后再展 开。此时有1条折痕,突起的⽅向指向纸条的背⾯,这条折痕叫做“下”折痕 ;突起的⽅向指向纸条正⾯的折痕叫做“上”折痕。如果每次都从下边向上⽅ 对折,对折N次。请从上到下计算出所有折痕的⽅向。给定折的次数n,请返回从上到下的折痕的数组,若为下折痕则对应元素为”down”,若为上折痕则为”up”.#测试样例:1#返回:["down"]

2017-09-02 22:08:42 285

原创 平衡二叉树判断、完全二叉树判断

平衡二叉树判断完全二叉树判断平衡二叉树判断有一棵二叉树,请设计一个算法判断这棵二叉树是否为平衡二叉树。给定二叉树的根结点root,请返回一个bool值,代表这棵树是否为平衡二叉树。我的提交# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self

2017-09-02 14:36:44 485

原创 二叉树的序列化

首先我们介绍二叉树先序序列化的方式,假设序列化的结果字符串为str,初始时str等于空字符串。先序遍历二叉树,如果遇到空节点,就在str的末尾加上“#!”,“#”表示这个节点为空,节点值不存在,当然你也可以用其他的特殊字符,“!”表示一个值的结束。如果遇到不为空的节点,假设节点值为3,就在str的末尾加上“3!”。现在请你实现树的先序序列化。给定树的根结点root,请返回二叉树序列化后的字符串。我的

2017-08-29 17:13:43 321

原创 递归二叉树的序列打印、非递归二叉树的序列打印

递归二叉树的序列打印非递归二叉树的序列打印递归二叉树的序列打印请用递归方式实现二叉树的先序、中序和后序的遍历打印。给定一个二叉树的根结点root,请依次返回二叉树的先序,中序和后续遍历(二维数组的形式)。我的提交# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x#

2017-08-29 16:32:23 597

原创 最左原位、完全二叉树计数、快速N次方

最左原位完全二叉树计数最左原位有一个有序数组arr,其中不含有重复元素,请找到满足arr[i]==i条件的最左的位置。如果所有位置上的数都不满足条件,返回-1。给定有序数组arr及它的大小n,请返回所求值。测试样例:[-1,0,2,3],4返回:2我的提交# -*- coding:utf-8 -*-class Find: def findPos(self, arr, n):

2017-08-29 11:59:07 462

原创 局部最小值位置、元素最左出现、循环有序数组最小值

局部最小值位置元素最左出现循环有序数组最小值局部最小值位置定义局部最小的概念。arr长度为1时,arr[0]是局部最小。arr的长度为N(N>1)时,如果arr[0]public class Solution { public int getLessIndex(int[] arr) { if (arr == null || arr.length == 0) {

2017-08-28 22:52:36 1661

原创 有环单链表相交判断、单链表相交判断

有环单链表相交判断单链表相交判断有环单链表相交判断如何判断两个有环单链表是否相交?相交的话返回第一个相交的节点,不相交的话返回空。如果两个链表长度分别为N和M,请做到时间复杂度O(N+M),额外空间复杂度O(1)。给定两个链表的头结点head1和head2(注意,另外两个参数adjust0和adjust1用于调整数据,与本题求解无关)。请返回一个bool值代表它们是否相交。我的提交 (这题意描述

2017-08-28 16:54:26 352

原创 复杂链表的复制、链表判环、无环单链表判相交

复杂链表的复制链表判环无环单链表判相交复杂链表的复制输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点)我的提交# -*- coding:utf-8 -*-# class RandomListNode:# def __init__(self, x):# self.label = x# self.

2017-08-28 14:45:24 438

原创 链表指定值清除、链表的回文结构

链表指定值清除现在有一个单链表。链表中每个节点保存一个整数,再给定一个值val,把所有等于val的节点删掉。给定一个单链表的头结点head,同时给定一个值val,请返回清除后的链表的头结点,保证链表中有不等于该值的其它值。请保证其他元素的相对顺序。# 测试样例:{1,2,3,4,3,2,1},2{1,3,4,3,1}我的提交# -*- coding:utf-8 -*-# class ListN

2017-08-28 10:28:47 319

原创 访问单个节点的删除、链表的分化、打印两个链表的公共值

访问单个节点的删除实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点。给定带删除的头节点和要删除的数字,请执行删除操作,返回删除后的头结点。链表中没有重复数字我的提交 (是我理解错题意了???)# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x#

2017-08-25 16:12:29 290

原创 栈的反转、滑动窗口、数组变树

滑动窗口有一个整型数组 arr 和一个大小为 w 的窗口从数组的最左边滑到最右边,窗口每次向右边滑一个位置。 返回一个长度为n-w+1的数组res,res[i]表示每一种窗口状态下的最大值。 以数组为[4,3,5,4,3,3,6,7],w=3为例。因为第一个窗口[4,3,5]的最大值为5,第二个窗口[3,5,4]的最大值为5,第三个窗口[5,4,3]的最大值为5。第四个窗口[4,3,3]的最大

2017-08-25 13:18:26 271

原创 相邻两数最大差值

有一个整形数组A,请设计一个复杂度为O(n)的算法,算出排序后相邻两数的最大差值。给定一个int数组A和A的大小n,请返回最大的差值。保证数组元素多于1个。# 测试样例:[1,2,5,4,6],5返回:2我的提交# -*- coding:utf-8 -*-class Gap: def maxGap(self, A, n): # write cod

2017-08-25 01:03:50 916

原创 最短子数组

对于一个数组,请设计一个高效算法计算需要排序的最短子数组的长度。给定一个int数组A和数组的大小n,请返回一个二元组,代表所求序列的长度。(原序列位置从0开始标号,若原序列有序,返回0)。保证A中元素均为正整数。# 测试样例:[1,4,6,5,9,10],6返回:2 解题参考 :http://blog.csdn.net/u010033948/article/details/51396354

2017-08-25 01:03:12 453

原创 栈、队列(1)

目录可查询最值的栈双栈队列栈的反转双栈排序可查询最值的栈定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。我的提交# -*- coding:utf-8 -*-class Solution: def __init__(self): self.stack = [] self.minStack = [] def push(self

2017-08-25 01:01:47 308

原创 有序矩阵查找

现在有一个行和列都排好序的矩阵,请设计一个高效算法,快速查找矩阵中是否含有值x。给定一个int矩阵mat,同时给定矩阵大小nxm及待查找的数x,请返回一个bool值,代表矩阵中是否存在x。所有矩阵中数字及x均为int范围内整数。保证n和m均小于等于1000。测试样例:[[1,2,3],[4,5,6],[7,8,9]],3,3,10返回:false我的提交# -*- coding:utf-8 -*

2017-08-24 17:05:53 630

原创 三色排序

有一个只由0,1,2三种元素构成的整数数组,请使用交换、原地排序而不是使用计数进行排序。给定一个只含0,1,2的整数数组A及它的大小,请返回排序后的数组。保证数组大小小于等于500。测试样例:[0,1,1,0,2,2],6返回:[0,0,1,1,2,2]我的提交# -*- coding:utf-8 -*-class ThreeColor: def sortThreeColor(self,

2017-08-24 16:55:02 525

原创 有序数组合并

有两个从小到大排序以后的数组A和B,其中A的末端有足够的缓冲空容纳B。请编写一个方法,将B合并入A并排序。给定两个有序int数组A和B,A中的缓冲空用0填充,同时给定A和B的真实大小int n和int m,请返回合并后的数组我的提交# -*- coding:utf-8 -*-class Merge: def mergeAB(self, A, B, n, m): # writ

2017-08-24 16:08:23 399

原创 重复值判断

请设计一个高效算法,判断数组中是否有重复值。必须保证额外空间复杂度为O(1)。给定一个int数组A及它的大小n,请返回它是否有重复值。# 测试样例:[1,2,3,4,5,5,6],7返回:true我的提交# -*- coding:utf-8 -*-class Checker: def checkDuplicate(self, a, n): # write code he

2017-08-24 15:42:28 559

原创 小范围排序

已知一个几乎有序的数组,几乎有序是指,如果把数组排好顺序的话,每个元素移动的距离可以不超过k,并且k相对于数组来说比较小。请选择一个合适的排序算法针对这个数据进行排序。给定一个int数组A,同时给定A的大小n和题意中的k,请返回排序后的数组。# 测试样例:[2,1,4,3,6,5,8,7,10,9],10,2返回:[1,2,3,4,5,6,7,8,9,10]我的提交 (照着参考答案改的,结果显

2017-08-24 15:33:35 200

原创 基数排序

对于一个int数组,请编写一个基数排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。保证元素均小于等于2000。测试样例:[1,2,3,5,2,3],6[1,2,2,3,3,5]我的提交# -*- coding:utf-8 -*-class RadixSort: def radixSort(self, A, n): # write code

2017-08-24 12:18:27 242

原创 计数排序

对于一个int数组,请编写一个计数排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。# 测试样例:[1,2,3,5,2,3],6[1,2,2,3,3,5]我的提交# -*- coding:utf-8 -*-class CountingSort: def countingSort(self, A, n): # write code here

2017-08-24 11:42:48 264

原创 希尔排序

对于一个int数组,请编写一个希尔排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。保证元素小于等于2000。# 测试样例:[1,2,3,5,2,3],6[1,2,2,3,3,5]我的提交# -*- coding:utf-8 -*-class ShellSort: def shellSort(self, A, n): # write cod

2017-08-24 11:05:13 204

java 学习路线图-2018最新

java 学习路线图-2018最新 以有趣和好理解的方式展示Java和Web的内容 设计一些略有挑战的练习 创造一些便于理解和消化知识点的方式,享受这个创造的过程

2018-10-01

JavaEE开发的颠覆者 Spring Boot实战源码

JavaEE开发的颠覆者 Spring Boot实战(作者:汪云飞)书籍的源代码。 在当今Java EE开发中,Spring框架是当之无愧的王者。而Spring Boot是Spring 主推的基于“习惯优于配置”的原则,让你能够快速搭建应用的框架,从而使得Java EE 开发变得异常简单。 《JavaEE开发的颠覆者: Spring Boot实战》从Spring 基础、Spring MVC基础讲起,从而无难度地引入Spring Boot 的学习。涵盖使用Spring Boot 进行Java EE 开发的绝大数应用场景,包含:Web 开发、数据访问、安全控制、批处理、异步消息、系统集成、开发与部署、应用监控、分布式系统开发等。 当你学完《JavaEE开发的颠覆者: Spring Boot实战》后,你将能使用Spring Boot 解决Java EE 开发中所遇到的绝大多数问题。

2017-09-24

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

TA关注的人

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