0

洛谷 P1162 填涂颜色题解

题目描述 由数字00组成的方阵中,有一任意形状闭合圈,闭合圈由数字11构成,围圈时只走上下左右44个方向。现要求把闭合圈内的所有空间都填写成22.例如:6 \times 66×6的方阵(n=6n=6),涂色前和涂色后的方阵如下: 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 0 1 ...

zealsoft 发布于 2019-08-24 13:41 评论(0)阅读(12)
3

程序员,你心里需要有点树

看官,不要生气,我没有骂你也没有鄙视你的意思,今天就是想单纯的给大伙分享一下树的相关知识,但是我还是想说作为一名程序员,自己心里有没有点树?你会没点数吗?言归正传,树是我们常用的数据结构之一,树的种类很多有二叉树、二叉查找树、平衡二叉树、红黑树、B树、B+树等等,我们今天就来聊聊二叉树相关的树。 什 ...

平头哥的技术博文 发布于 2019-08-23 19:48 评论(1)阅读(398)
1

纯数据结构Java实现(5/11)(Set&Map)

纯数据结构Java实现(5/11)(Set&Map) Set 和 Map 都是抽象或者高级数据结构,至于底层是采用树还是散列则根据需要而定。 可以细想一下 TreeMap/HashMap, TreeSet/HashSet 的区别即可 只定义操作接口(操作一致),不管具体的实现,所以即便底层是 BST ...

CH-YK 发布于 2019-08-23 18:37 评论(0)阅读(151)
0

快速幂

一.前言 经历了自闭的多校生活,想着重新回顾一些理解不是很清楚的知识点,于是就写了第一篇文章。思路非常混乱……,如有问题请dalao们指正。 二.快速幂 幂运算是一种常见的运算,最容易想到的累乘法的复杂度为O(n),但很多时候这并不够快,所以出现了快速幂运算。 (为什么不用内置函数pow?)有时候幂 ...

若讷 发布于 2019-08-23 17:34 评论(0)阅读(39)
0

程序员,你应该知道的数据结构之栈

数据结构中的栈不要与 Java 中的栈混淆,他们俩不是一回事,数据结构中的栈是一种受限制的线性表,栈具有先进后出、后进先出的特点,因为栈只允许访问最后一个数据项,即最后插入的数据项。也许你会有疑问,栈既然有这么多限制,为什么不用数组或者链表而使用栈?在开发中,我们有特定的场景,根据特定的场景去选用数 ...

平头哥的技术博文 发布于 2019-08-23 16:01 评论(0)阅读(259)
1

多渠道推广场景下,如何实现 App 用户增长的精准归因?

为了实现用户的快速增长,以推广 App 为目标的线上广告投放是很多平台获取新用户的重要方式。随道移动互联网的发展,现在 App 推广的渠道越来越丰富,除了 WAP 站点、第三方 App 之外,HTML5 成了 App 推广的又一个主战场。 选好了合适的推广平台,预算(理论上)也到位了,作为直面用户的 ...

马蜂窝技术 发布于 2019-08-23 15:44 评论(1)阅读(207)
0

【每日一算】旋转有序数组

在旋转有序数组中找出给定的一个整数,并返回该整数在数组中的下标? 解题思路: 1. 假设最左边下标用left标识,最右边下标有right标识,中间整数下标用mid标识; 2. 每次判断下标mid对应的整数值是否大于下标left对应整数值,如果大于,说明左边有序,如果小于,说明右边有序; 3. 在上一 ...

qi个名很难么 发布于 2019-08-23 12:47 评论(0)阅读(25)
0

洛谷 P1330 封锁阳光大学题解

题目描述 曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大学的校园里刷街。河蟹看到欢快的曹,感到不爽。河蟹决定封锁阳光大学,不让曹刷街。 阳光大学的校园是一张由N个点构成的无向图,N个点之间由M条道路连接。每只河蟹可以对一个点进行封锁,当某个点被封锁后,与这个点相连的道路就被封锁了,曹就无法在 ...

zealsoft 发布于 2019-08-23 11:38 评论(0)阅读(14)
0

常见排序算法的稳定性分析

一、不稳定排序算法有哪些 1、堆排序 2、希尔排序 3、快速排序 4、选择排序 口诀:一堆(堆)希尔(希尔)快(快速)选(选择) 二、常见排序算法稳定性分析 1、堆排序稳定性分析 我们知道堆的结构是节点i的孩子为 2*i 和 2*i+1 节点,大顶堆要求父节点大于等于其 2 个子节点,小顶堆要求父节 ...

Leophen 发布于 2019-08-23 02:34 评论(0)阅读(19)
0

【还是畅通工程 HDU - 1233】【Kruskal模板题】

Kruskal算法讲解 该部分内容全部摘录自刘汝佳的《算法竞赛入门经典》 Kruskal算法的第一步是给所有边按照从小到大的顺序排列。 这一步可以直接使用库函数 qsort或者sort。 接下来从小到大依次考查每条边(u,v)。 情况1: u和v在同一个连通分量中, 那么加入(u, v)后会形成环, ...

AJudge 发布于 2019-08-22 22:56 评论(0)阅读(18)
1

程序员,你应该知道的数据结构之哈希表

哈希表简介 哈希表也叫散列表,哈希表是一种数据结构,它提供了快速的插入操作和查找操作,无论哈希表总中有多少条数据,插入和查找的时间复杂度都是为O(1),因为哈希表的查找速度非常快,所以在很多程序中都有使用哈希表,例如拼音检查器。 哈希表也有自己的缺点,哈希表是基于数组的,我们知道数组创建后扩容成本比 ...

平头哥的技术博文 发布于 2019-08-22 22:52 评论(0)阅读(227)
0

程序员,你应该知道的数据结构之跳表

跳表的原理 跳表也叫跳跃表,是一种动态的数据结构。如果我们需要在有序链表中进行查找某个值,需要遍历整个链表,二分查找对链表不支持,二分查找的底层要求为数组,遍历整个链表的时间复杂度为O(n)。我们可以把链表改造成B树、红黑树、AVL树等数据结构来提升查询效率,但是B树、红黑树、AVL树这些数据结构实 ...

平头哥的技术博文 发布于 2019-08-22 22:48 评论(0)阅读(78)
0

程序员,你应该知道的二分查找算法

原理 二分查找(Binary Search)算法,也叫折半查找算法。二分查找的思想非常简单,有点类似分治的思想。二分查找针对的是一个有序的数据集合,每次都通过跟区间的中间元素对比,将待查找的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为 0。 为了方便理解,我们以数组 ,在数组中查找 ...

平头哥的技术博文 发布于 2019-08-22 22:43 评论(0)阅读(22)
1

程序员,你应该知道的基础排序算法

冒泡排序(Bubble Sort) 原理 冒泡排序只会操作相邻的两个数据。每次冒泡操作都会对相邻的两个元素进行比较,看是否满足大小关系要求。如果不满足就让它俩互换。一次冒泡会让至少一个元素移动到它应该在的位置,重复 n 次,就完成了 n 个数据的排序工作。 图解 图片来源网络,侵权即删 性能 时间复 ...

平头哥的技术博文 发布于 2019-08-22 22:33 评论(0)阅读(57)
1

【畅通工程 HDU - 1232 】【并查集模板题】

并查集讲解和模板 有一个博文对此分析的很透彻,附 "链接" 为避免原链接失效,现摘录如下: 为了解释并查集的原理,我将举一个更有爱的例子。 话说江湖上散落着各式各样的大侠,有上千个之多。他们没有什么正当职业,整天背着剑在外面走来走去,碰到和自己不是一路人的,就免不了要打一架。但大侠们有一个优点就是讲 ...

AJudge 发布于 2019-08-22 22:17 评论(0)阅读(45)
1

好吧,又是两分钟看完一道投机取巧的算法题

题目来源于 LeetCode 上第 172 号问题:阶乘后的零。题目难度为 Easy,目前通过率为 38.0% 。 题目描述 给定一个整数 n ,返回 n ! 结果尾数中零的数量。 示例 1: 示例 2: 说明: 你算法的时间复杂度应为 O (log n ) 。 题目解析 题目很好理解,数阶乘后的数 ...

五分钟学算法 发布于 2019-08-22 20:51 评论(0)阅读(78)
0

字典更新与K-SVD

字典更新与K-SVD 凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 1. 矩阵的奇异值分解 (Singular Value Decomposition, SVD) 2. 字典更新方法 2.1 最优方向法 (Method of Optimal Directi ...

凯鲁嘎吉 发布于 2019-08-22 17:14 评论(0)阅读(32)
0

排序算法——归并排序

什么是归并排序? 归并排序简单来讲,就是将两个有序的序列整合到一起。 如何将两个有序的序列整合到一起呢? 那么我们假设,现在有 M={m1 ,m2,m3,....,mx}序列和 N = {n1,n2,n3,....,ny}序列,这两个序列已经是有序的序列,首先创建一个空序列 K = {},那么接着将 ...

CHANGKTITI 发布于 2019-08-22 16:50 评论(0)阅读(148)
1

纯数据结构Java实现(3/11)(链表)

完整实现单链表(内含哑结点等技巧),然后实现链栈、链式队列,最后扩展其他链表。 ...

CH-YK 发布于 2019-08-22 13:15 评论(2)阅读(210)
0

(通俗易懂小白入门)字符串Hash+map判重——暴力且优雅

字符串Hash 今天我们要讲解的是用于处理字符串匹配查重的一个算法,当我们处理一些问题如给出10000个字符串输出其中不同的个数,或者给一个长度100000的字符串,找出其中相同的字符串有多少个(这样描述有点不清楚但是大致的意思就是当字符串长度很长,而且涉及到多个字符串之间反复比较时,由于比较的次数 ...

乌克兰大野猪 发布于 2019-08-22 12:38 评论(0)阅读(165)