
【架构】算法
文章平均质量分 95
Microi风闲
三天不学习
展开
-
十大排序算法 思路+图解+代码示例【排序算法】
摘要: 这里罗列了常见的十大排序算法,通过注解、思路、图解、代码来快速了解各种排序算法的原理。原创 2025-03-02 19:54:50 · 999 阅读 · 0 评论 -
秒杀业务架构优化之路
一、秒杀业务为什么难做IM系统,例如QQ或者微博,每个人都读自己的数据(好友列表、群列表、个人信息)。微博系统,每个人读你关注的人的数据,一个人读多个人的数据。秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。例如小米手机每周二的秒杀,可能手机只有1万部,但瞬时进入的流量可能是几百几千万。又例如12306抢票,票是有限的,库存一份,瞬时流量非常多,都读相同的库存。读写冲...原创 2018-02-26 15:48:41 · 361 阅读 · 0 评论 -
二进制,八进制,十进制,十六进制转换算法
一.本文所涉及的内容(Contents)本文所涉及的内容(Contents)背景(Contexts)进制转换算法(Convert)(二、八、十六进制) → (十进制)二进制 → 十进制八进制 → 十进制十六进制 → 十进制(十进制) → (二、八、十六进制)十进制 → 二进制十进制 → 八进制十进制 → 十六进制(二进制) ↔ (八、十六进制)二进制原创 2017-06-06 09:56:30 · 1336 阅读 · 0 评论 -
数据结构基础温故-1.线性表(中)
在上一篇中,我们学习了线性表最基础的表现形式-顺序表,但是其存在一定缺点:必须占用一整块事先分配好的存储空间,在插入和删除操作上需要移动大量元素(即操作不方便),于是不受固定存储空间限制并且可以进行比较快捷地插入和删除操作的链表横空出世,所以我们就来复习一下链表。一、单链表基础1.1 单链表的节点结构 在链表中,每个节点由两部分组成:数据域和指针域。1原创 2017-06-16 18:11:07 · 441 阅读 · 0 评论 -
数据结构基础温故-1.线性表(下)
在上一篇中,我们了解了单链表与双链表,本次将单链表中终端结点的指针端由空指针改为指向头结点,就使整个单链表形成一个环,这种头尾相接的单链表称为单循环链表,简称循环链表(circular linked list)。一、循环链表基础1.1 循环链表节点结构 循环链表和单链表的主要差异就在于循环的判断条件上,原来是判断p.next是否为空,现在则是p.next不等于头结点,原创 2017-06-16 18:17:23 · 370 阅读 · 0 评论 -
数据结构基础温故-1.线性表(上)
开篇:线性表是最简单也是在编程当中使用最多的一种数据结构。例如,英文字母表(A,B,C,D...,Z)就是一个线性表,表中的每一个英文字母都是一个数据元素;又如,成绩单也是一个线性表,表中的每一行是一个数据元素,每个数据元素又由学号、姓名、成绩等数据项组成。顺序表和链表作为线性表的两种重要的存在形式,它们是堆栈、队列、树、图等数据结构的实现基础。一、线性表基础1.1 线性表原创 2017-06-16 18:05:34 · 482 阅读 · 0 评论 -
数据结构基础温故-2.栈
现实生活中的事情往往都能总结归纳成一定的数据结构,例如餐馆中餐盘的堆叠和使用,羽毛球筒里装的羽毛球等都是典型的栈结构。而在.NET中,值类型在线程栈上进行分配,引用类型在托管堆上进行分配,本文所说的“栈”正是这种数据结构。栈和队列都是常用的数据结构,它们的逻辑结构与线性表相通,不同之处则在于操作受某种特殊限制。因此,栈和队列也被称为操作受限的线性表。这里,我们首先来了解一下栈。一、栈的原创 2017-06-16 18:01:48 · 381 阅读 · 0 评论 -
数据结构基础温故-3.队列
在日常生活中,队列的例子比比皆是,例如在车展排队买票,排在队头的处理完离开,后来的必须在队尾排队等候。在程序设计中,队列也有着广泛的应用,例如计算机的任务调度系统、为了削减高峰时期订单请求的消息队列等等。与栈类似,队列也是属于操作受限的线性表,不过队列是只允许在一端进行插入,在另一端进行删除。在其他数据结构如树的一些基本操作中(比如树的广度优先遍历)也需要借助队列来实现,因此这里我们来看看队列。原创 2017-06-16 17:57:11 · 572 阅读 · 0 评论 -
数据结构基础温故-6.查找(上):基本查找与树表查找
只要你打开电脑,就会涉及到查找技术。如炒股软件中查股票信息、硬盘文件中找照片、在光盘中搜DVD,甚至玩游戏时在内存中查找攻击力、魅力值等数据修改用来作弊等,都要涉及到查找。当然,在互联网上查找信息就更加是家常便饭。查找是计算机应用中最常用的操作之一,也是许多程序中最耗时的一部分,查找方法的优劣对于系统的运行效率影响极大。因此,本篇讨论一些查找方法。一、顺序查找1.1 基本思想原创 2017-06-16 17:50:34 · 805 阅读 · 0 评论 -
数据结构基础温故-6.查找(下):哈希表
哈希(散列)技术既是一种存储方法,也是一种查找方法。然而它与线性表、树、图等结构不同的是,前面几种结构,数据元素之间都存在某种逻辑关系,可以用连线图示表示出来,而哈希技术的记录之间不存在什么逻辑关系,它只与关键字有关联。因此,哈希主要是面向查找的存储结构。哈希技术最适合的求解问题是查找与给定值相等的记录。一、基本概念及原理1.1 哈希定义的引入 这里首先看一个场景原创 2017-06-16 17:45:58 · 616 阅读 · 0 评论 -
数据结构基础温故-7.排序
排序(Sorting)是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为按关键字“有序”的记录序列。如何进行排序,特别是高效率地进行排序时计算机工作者学习和研究的重要课题之一。排序有内部排序和外部排序之分,若整个排序过程不需要访问外存便能完成,则称此类排序为内部排序,反之则为外部排序。本篇主要介绍插入排序、交换排序、选择排序和归并排序这几种内部排序方法。首先,我们今天的目原创 2017-06-16 17:34:12 · 528 阅读 · 0 评论