博客园不常在线

有问题联系微信

微信号

微信公众号

06 2020 档案

摘要:2.源码解析 1.相关命令如下: {"hset",hsetCommand,4,"wmF",0,NULL,1,1,1,0,0}, {"hsetnx",hsetnxCommand,4,"wmF",0,NULL,1,1,1,0,0}, {"hget",hgetCommand,3,"rF",0,NULL,1 阅读全文
posted @ 2020-06-30 22:00 Code技术分享 阅读(659) 评论(0) 推荐(0) 编辑
摘要:1.BRPOP、BLPOP BLPOP: BLPOP 是阻塞式列表的弹出原语。 它是命令 LPOP 的阻塞版本,这是因为当给定列表内没有任何元素可供弹出的时候, 连接将被 BLPOP 命令阻塞。 当给定多个 key 参数时,按参数 key 的先后顺序依次检查各个列表,弹出第一个非空列表的头元素。 B 阅读全文
posted @ 2020-06-30 15:36 Code技术分享 阅读(1136) 评论(0) 推荐(1) 编辑
摘要:1.示意图 2.各命令详解 LPUSH/RPUSH LPUSH: 从队列的左边入队一个或多个元素 将所有指定的值插入到存于 key 的列表的头部。如果 key 不存在,那么在进行 push 操作前会创建一个空列表。 如果 key 对应的值不是一个 list 的话,那么会返回一个错误。 可以使用一个命 阅读全文
posted @ 2020-06-30 11:24 Code技术分享 阅读(2960) 评论(0) 推荐(1) 编辑
摘要:1.介绍 Redis在3.2版本之前List的底层编码是ZipList和LinkedList实现的 在3.2版本之后,重新引入了QuickList的数据结构,列表的底层都是QuickList实现 当List对象中元素的长度比较小或者数量比较少的时候,采用ZipList来存储 当List对象中元素的长 阅读全文
posted @ 2020-06-30 10:59 Code技术分享 阅读(551) 评论(0) 推荐(0) 编辑
摘要:1.介绍 插入排序算法属于内部排序算法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的 2.思想 插入排序(Insertion Sorting)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素, 无序表中包含有n-1个元素,排序过程中每 阅读全文
posted @ 2020-06-27 09:12 Code技术分享 阅读(396) 评论(0) 推荐(0) 编辑
摘要:1.介绍 选择排序算法属于内部排序算法,是从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置达到排序的目的 时间复杂度:O(n^2) 双层for 2.思想 选择排序(select sorting)也是一种简单的排序方法。它的基本思想是:第一次从arr[0]~arr[n-1]中选取最小值, 阅读全文
posted @ 2020-06-26 15:58 Code技术分享 阅读(456) 评论(0) 推荐(0) 编辑
摘要:1.介绍 冒泡排序的基本思想就是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就像水底的气泡一样逐渐向上冒泡。 因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中 阅读全文
posted @ 2020-06-26 14:08 Code技术分享 阅读(323) 评论(0) 推荐(0) 编辑
摘要:1.常见的时间复杂度 常数阶:O(1) 对数阶:O(log2n) 线性阶:O(n) 线性对数阶:O(nlog2n) 平方阶:O(n^2) 立方阶:O(n^3) k次方阶:O(2^n) 常见的算法时间复杂度由小到大依次为:Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n2)<Ο(n3) 阅读全文
posted @ 2020-06-25 15:59 Code技术分享 阅读(519) 评论(0) 推荐(0) 编辑
摘要:1.时间频度 介绍: 一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,他花费时间越多。一个算法中的语句执行次数称为语句频度或时间频度 举例说明: 比如计算1-100所有数字之和,我们设计的两种算法 int total = 0; int end = 100; for (in 阅读全文
posted @ 2020-06-25 15:34 Code技术分享 阅读(469) 评论(0) 推荐(0) 编辑
摘要:1.介绍 排序是将一组数据,以指定的顺序进行排序的过程 2.分类 内部排序法:指将需要处理的所有数据都加载到内部存储器中进行排序 外部排序法:数据量过大,无法全部加载到内存中,需要借助外部存储进行排序 阅读全文
posted @ 2020-06-25 15:03 Code技术分享 阅读(238) 评论(0) 推荐(0) 编辑
摘要:1.介绍 八皇后问题,是一个古老而著名的问题,是回溯算法的经典案例,该问题是国际西洋棋棋手马克斯.贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即 任意两个皇后都不能处于同一行、同一列、同一斜线。问有多少种摆法(92)。 2.思路分析 第一个皇后先放第一行第一列 第二 阅读全文
posted @ 2020-06-25 13:33 Code技术分享 阅读(374) 评论(0) 推荐(1) 编辑
摘要:1.介绍 中文意义就是每日时间间隔计划生成 2.API讲解 (1)WithInterval、WithIntervalInHours、WithIntervalInMinutes、WithIntervalInSeconds WithInterval:指定要生成触发器的时间单位和间隔。 WithInter 阅读全文
posted @ 2020-06-24 23:34 Code技术分享 阅读(2782) 评论(0) 推荐(1) 编辑
摘要:1.示例 2.代码实现 public class Maze { public static void Test() { int[][] map = new int[8][]; for (int i = 0; i < map.Length; i++) { map[i] = new int[7]; } 阅读全文
posted @ 2020-06-24 13:56 Code技术分享 阅读(396) 评论(0) 推荐(0) 编辑
摘要:1.介绍 简单的说:递归就是方法自己调用自己,每次调用时传入不同的变量,递归有助于编程者解决复杂的问题,同时也让代码变得整洁 2.规则 执行一个方法时,就创建一个新的受保护的独立空间(栈空间) 方法的局部变量是独立的,不会相互影响,比如n变量 如果方法中使用的是引用类型变量(比如数组),就会共享该引 阅读全文
posted @ 2020-06-23 09:27 Code技术分享 阅读(547) 评论(0) 推荐(2) 编辑
摘要:1.具体步骤 1)初始化两个栈:运算符栈s1和储存中间结果的栈s2;2)从左至右扫描中缀表达式;3)遇到操作数时,将其压s2;4)遇到运算符时,比较其与s1栈顶运算符的优先级: (1)如果s1为空,或栈顶运算符为左括号“(”,则直接将此运算符入栈; (2)否则,若优先级比栈顶运算符的高,也将运算符压 阅读全文
posted @ 2020-06-22 14:26 Code技术分享 阅读(677) 评论(0) 推荐(0) 编辑
摘要:1.介绍 后缀表达式又称逆波兰表达式,与前缀表达式相似,只是运算符位于操作数之后 2.举例说明 (3+4)*5-6对应的后缀表达式就是3 4 +5 * 6 - 3.示例 输入一个逆波兰表达式(后缀表达式),使用栈(Stack),计算其结果 思路分析: 从左至右扫描表达式,遇到数字时,将数字压入堆栈, 阅读全文
posted @ 2020-06-21 14:35 Code技术分享 阅读(861) 评论(0) 推荐(1) 编辑
摘要:所有方法图 CalendarIntervalScheduleBuilder方法 在SimpleScheduleBuilder基础上实现了日、周、月、年 WithInterval:指定要生成触发器的时间单位和间隔。 WithIntervalInHours:指定要生成触发器的间隔按小时来 WithInt 阅读全文
posted @ 2020-06-20 15:30 Code技术分享 阅读(1970) 评论(0) 推荐(1) 编辑
摘要:所有方法图 SimpleScheduleBuilder方法 RepeatForever:指定触发器将无限期重复。 WithRepeatCount:指定重复次数 var trigger = TriggerBuilder.Create().WithSimpleSchedule(s=>s.WithInte 阅读全文
posted @ 2020-06-20 14:58 Code技术分享 阅读(3097) 评论(0) 推荐(1) 编辑
摘要:1.问题介绍 2.实现思路 3.代码实现 第一个版本(采用这个) public class ArrayStack { private int _maxSize; private int[] _arr; private int _top = -1; /// <summary> /// 初始化栈 /// 阅读全文
posted @ 2020-06-20 10:45 Code技术分享 阅读(424) 评论(0) 推荐(1) 编辑
摘要:1.介绍 特点: 1.双端:获取某个结点的前驱和后继结点都是O(1) 2.无环:表头的prev指针和表尾的next指针都指向NULL,对链表的访问都是以NULL为终点 3.带表头指针和表尾指针:获取表头和表尾的复杂度都是O(1) 4.带链表长度计数器:len属性记录,获取链表长度O(1) 5.多态: 阅读全文
posted @ 2020-06-19 10:26 Code技术分享 阅读(690) 评论(0) 推荐(2) 编辑
摘要:所有方法图: 1.Create、Build Create:创建一个TriggerBuilder Build:生成Trigger var trigger = TriggerBuilder.Create().Build(); 底层实现 /// <summary> /// Create a new Tri 阅读全文
posted @ 2020-06-18 16:02 Code技术分享 阅读(4681) 评论(0) 推荐(2) 编辑
摘要:1.介绍 栈是一个先入后出(FILO-First In Last Out)的有序列表 栈是限制线性表中元素的插入和删除只能在线性表的同一端进行的特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom) 根据栈的定义可知,最先放入栈中的元素在栈底 阅读全文
posted @ 2020-06-18 11:05 Code技术分享 阅读(661) 评论(0) 推荐(2) 编辑
摘要:1.介绍 string类型本质上是char[]数组的封装 中文网:http://www.redis.cn/commands.html#string 2.常用命令 set /get set命令的时间复杂度是O(1) 将键key设定为指定的“字符串”值。 如果 key 已经保存了一个值,那么这个操作会直 阅读全文
posted @ 2020-06-17 16:54 Code技术分享 阅读(328) 评论(0) 推荐(1) 编辑
摘要:1.介绍 Josephu问题为:设编号为1、2、...n的n个人围坐在一圈,约定编号为k(1<=k<=n) 的人从1开始报数, 数到m的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,以此类推,直到所有人都出列为止,由此产生出一个出列编号的序列。 2.提示 用一个不带头节点的循环链表来处 阅读全文
posted @ 2020-06-17 14:50 Code技术分享 阅读(454) 评论(0) 推荐(1) 编辑
摘要:1.对比单向链表 单向链表查找的方向只能是一个方向,而双向链表可以向前或者向后查找 单向链表不能自我删除,需要靠辅助节点,而双向链表可以自我删除 对于单向链表的删除,我们首先要找到单向链表待删除节点的前一个节点,然后前一个节点的下一个节点指向删除节点的后一个节点。 2.双向链表的思路 3.代码实现 阅读全文
posted @ 2020-06-16 14:30 Code技术分享 阅读(608) 评论(0) 推荐(2) 编辑
摘要:所有方法图: 1.Create,OfType 在JobBuilder中有五种方法执行Action: var job1 = JobBuilder.Create().OfType<FirstJob>().Build(); var job2 = JobBuilder.Create<FirstJob>(). 阅读全文
posted @ 2020-06-16 09:21 Code技术分享 阅读(2970) 评论(0) 推荐(0) 编辑
摘要:1.求单链表中有效节点个数 public static int GetLength(HeroNode headNode) { int length = 0; var cur = headNode.Next; while (true) { if (cur == null) break; length+ 阅读全文
posted @ 2020-06-15 23:53 Code技术分享 阅读(288) 评论(0) 推荐(0) 编辑
摘要:1.介绍: 链表是有序的列表,但是它在内存的存储如下: 链表是以节点的方式来存储,链式存储 每一个节点包含data域,next域:指向下一个节点 链表的各个节点不一定是连续存储 链表分带头节点的链表和不带头节点的链表,根据实际的需求来确定 单链表(带头节点) 2.应用实例 使用带head头的单向链表 阅读全文
posted @ 2020-06-15 15:16 Code技术分享 阅读(564) 评论(0) 推荐(0) 编辑
摘要:整体示意图: 1.DefaultThreadPool 如果不存在PropertyThreadPoolType,那么就使用DefaultThreadPool var threadPoolTypeString = cfg.GetStringProperty(PropertyThreadPoolType) 阅读全文
posted @ 2020-06-15 10:57 Code技术分享 阅读(619) 评论(0) 推荐(1) 编辑
摘要:1.Builder(建造者)模式 JobBuilder DateBuilder 其他的Builder(TriggerBuilder、SchedulerBuilder等) 2.抽象工厂模式 ISchedulerFactory DirectSchedulerFactory StdSchedulerFac 阅读全文
posted @ 2020-06-15 10:44 Code技术分享 阅读(722) 评论(0) 推荐(0) 编辑
摘要:1.介绍 Quartz是功能强大的开源作业调度库,几乎可以集成到任何Java应用程序中-从最小的独立应用程序到最大的电子商务系统。Quartz可用于创建简单或复杂的计划,以执行数以万计,数以万计的工作。任务定义为标准Java组件的作业,它们实际上可以执行您可以对其执行的任何编程操作。Quartz S 阅读全文
posted @ 2020-06-15 10:37 Code技术分享 阅读(579) 评论(0) 推荐(1) 编辑
摘要:1.使用此电脑=>管理 系统工具=>任务计划程序=>任务计划程序库=>创建任务 创建任务 触发器 操作 条件=>去掉只有在计算机使用交流电源时才启动此任务 创建完成 阅读全文
posted @ 2020-06-15 10:32 Code技术分享 阅读(503) 评论(0) 推荐(3) 编辑
摘要:一.源码下载: Windows中的Redis源码下载:https://github.com/microsoftarchive/redis/tree/3.2 根据官网说明可知,用VS2013编译,但是必须更新到update5, 否则会出现各种编译错误,确实如此,之前用vs2013的其它版本,出现各种错 阅读全文
posted @ 2020-06-14 16:29 Code技术分享 阅读(1361) 评论(0) 推荐(1) 编辑
摘要:1.介绍 队列是一个有序列表,可以用数组或是链表来实现。 遵循先入先出的原则,即:先存入队列的数据,要先取出。后存入的要后取出 队列是属于线性结构中的一种 2.图示 3.通过数组实现 public class CircleArrayQueue { /// <summary> /// 队列最大值 // 阅读全文
posted @ 2020-06-14 14:03 Code技术分享 阅读(978) 评论(0) 推荐(1) 编辑
摘要:1.介绍 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法是: 1.记录数组一共有几行几列,有多少个不同的值 2.把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模 2.分析 3.代码实现 public class Spar 阅读全文
posted @ 2020-06-13 13:17 Code技术分享 阅读(630) 评论(0) 推荐(1) 编辑
摘要:1.介绍 数据结构:是指相互之间存在一种或多种特定关系的数据元素的集合用计算机存储、组织数据的方式。数据结构分别为逻辑结构、(存储)物理结构和数据的运算三个部分。 数据结构包括:线性结构和非线性结构。 线性结构 线性结构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系 线性结构有两种不 阅读全文
posted @ 2020-06-13 13:16 Code技术分享 阅读(574) 评论(0) 推荐(1) 编辑
摘要:1.介绍 AutoMapper是一个对象-对象映射器。对象-对象映射通过将一种类型的输入对象转换为另一种类型的输出对象来工作。使AutoMapper变得有趣的是,它提供了一些有趣的约定,以免去搞清楚如何将类型A映射为类型B。只要类型B遵循AutoMapper既定的约定,就需要几乎零配置来映射两个类型 阅读全文
posted @ 2020-06-11 16:07 Code技术分享 阅读(289) 评论(0) 推荐(1) 编辑
摘要:1.ElasticSearch Head使用 扩展程序安装插件:ElasticSearch github地址:https://github.com/mobz/elasticsearch-head/ 运行效果: 2.Kibana使用 下载链接:https://www.elastic.co/guide/ 阅读全文
posted @ 2020-06-08 23:05 Code技术分享 阅读(226) 评论(0) 推荐(1) 编辑
摘要:1.介绍 Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于 阅读全文
posted @ 2020-06-06 13:18 Code技术分享 阅读(318) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示