摘要: 什么是REST风格的接口: 就是用URL定位资源,用HTTP描述操作。也就是:URL定位资源,用HTTP动词(GET,POST,DELETE,PUT)描述操作。 在设计web接口的时候,REST主要是用于定义接口名,接口名一般是用名次写,不用动词,那怎么表达“获取”或者“删除”或者“更新”这样的操作 阅读全文
posted @ 2019-10-05 15:45 源格 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 一、大白话解说,半分钟就懂,用生活中的例子来说明: 小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。 后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,两个厨师的关系是集群。 为了让厨师专心炒菜,把菜做到极致,再请了个配菜师负责切菜,备菜,备料 ... 厨师和配菜师的关系是分布 阅读全文
posted @ 2019-09-13 15:25 源格 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 高频面试题: 比如:3 1 6 2 7 排序后是: 这道题目借用了桶这个概念,但是没有进行桶排序 N个数准备N+1个桶 中间的数字:把min到max范围等分成N+1份,一个数属于哪号范围,就放到哪个桶里 例如: 排序之后的相邻数字可能在同一个桶,也可能在相邻的桶 15的相邻值,可能来自于11(同一个 阅读全文
posted @ 2019-05-13 21:30 源格 阅读(769) 评论(0) 推荐(0) 编辑
摘要: 堆排序很重要,但是更重要的是堆这个结构 堆结构:实际上是一棵完全二叉树 一个数组可以根据父结点、左子结点、右子结点的关系,脑补出一棵完全二叉树 算法1:一个数组变为大顶堆 heapInsert() 数组:2、1、3、6、0、4 (1)只有2的时候 (2) 2、1【认为完全二叉树的范围是0~1的,超过1就越界】 (3)2、1、3 3(下标2)找到自己的父结点:(2-1)/2=0 此时不满... 阅读全文
posted @ 2019-05-07 22:38 源格 阅读(447) 评论(0) 推荐(0) 编辑
摘要: 引言: 解答: 需要准备3个下标 如果当前数字=num,cur跳下一个 如果数组中的当前数字num,把这个数(7)和大于区域的前一个数(x)交换 然后大于区域向左扩一个位置,more移动一下 然后让cur停留在原地,继续考察换过来的x跟num的大小关系 当cur == more的时候,整个过程停止 public class Code_08_NetherlandsFlag { ... 阅读全文
posted @ 2019-05-06 15:10 源格 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)) import java.util.Stack; /* * 解题注意:原栈多大,min栈就多大 * 23521 * 22221 * 题目意思是当前最小,你data栈pop掉1以后,当前min就改变了 */ public class Solution20 { Stack stac... 阅读全文
posted @ 2019-05-05 21:01 源格 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 面试常考:归并排序的思想(分治) import java.util.Arrays; //小和问题 public class SmallSort { public static void main(String[] args) { int[] arr = {1,3,4,2,5}; System.out.println(Arrays.toString(ar... 阅读全文
posted @ 2019-05-05 20:52 源格 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 我们在字符串中见到过CompareTo方法,知道这个方法是用于比较字符串顺序的,根据字典顺序进行排序。Java中很多类也都有CompareTo方法,甚至于排序算法的底层组成也是依赖于比较的,而这个比较就是依赖于各种数据类型的CompareTo或者Compare方法。Java中所有的compareTo方法都源于一个共同的接口,那就是Comparable。这个接口只有一个方法,那就是CompareTo... 阅读全文
posted @ 2019-04-24 19:17 源格 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 预备知识:顺序存储的二叉树 一.顺序存储二叉树的性质 1. 第n个元素的左子节点:2*n+1 2. 第n个元素的右子节点:2*n+2 3. 第n个元素的父节点:(n-1)/2 二.顺序存储二叉树的遍历 堆排序:利用堆这种数据结构 堆分为:大顶堆、小顶堆 大顶堆:父节点永远都大于它的任何一个子节点(不论是左子节点还是右子节点) 升序排列使用:大顶堆 降序排列使用:小顶堆 把数组画成一颗完全二叉树... 阅读全文
posted @ 2019-04-18 11:39 源格 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 面360的时候这道题目加了一个要求就是要求小数输出整数,故增加一个关于小数点的判断 要注意转义字符:“.”和“|”都是转义字符,必须得加"\\"。同理:*和+也是如此的。如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");如果用“|”作为分隔的话,必须是如下写法:String.split("\\|... 阅读全文
posted @ 2019-04-11 15:06 源格 阅读(483) 评论(0) 推荐(0) 编辑