0

数据结构学习--双向链表(python)

概念 双向链表(Double_linked_list)也叫双链表,是链表的一种,它的每个数据结点中都有 两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可 以很方便地访问它的前驱结点和后继结点。 实现 ...

雷子-LL 发布于 2019-12-13 13:11 评论(0)阅读(5)
0

数据结构学习--单链表(python)

概念 链表(linked_list)是物理存储单元上非连续的、非顺序的存储结构,数据元素的逻辑顺序 是通过链表的指针地址实现,每个元素包含两个结点,一个是存储元素的数据域 (内存空间) ,另一个是指向下一个结点地址的指针域。根据指针的指向,链表能形成不同的结构,例如 单链表,双向链表,循环链表等. ...

雷子-LL 发布于 2019-12-13 13:10 评论(0)阅读(5)
0

二分查找(Java)

题目: 编写程序,完成以下功能: (1)输入5个整数到数组中; (2)使用冒泡法对5个数按从小到大排序,输出排序后的数组; (3)输入一个整数X,在数组中用二分法查找X,找到输出X在数组中的下标,找不到输出 1; Java实现: ...

顾北清 发布于 2019-12-13 10:20 评论(0)阅读(4)
0

如何理解尾递归

所谓尾递归,return语句后面跟的一定没有新的变量,只需要一个栈,只需要递归调用它本身,所有的运算操作全部放在尾递归函数的参数列表中进行。 例: def tailrecsum(x, running_total=0): if x == 0: return running_total else: re ...

知亦行 发布于 2019-12-12 21:20 评论(0)阅读(12)
0

快速排序

自己对快速排序的一些理解和心得 像是冒泡排序的升级版,也有着插入排序的影子,大多数情况下,效率最高 核心思想:分而治之,与二分查找法有点联系,像是一种东西的正反两用。 举个生活中的例子,就像切豆腐,一块豆腐切成两块,给两个人,原先一个人的工作量,相当于两个人完成,效率近似于一半(毕竟切开这个动作,再 ...

1+1===2 发布于 2019-12-12 21:16 评论(0)阅读(13)
0

剑指offer-31:整数中1出现的次数(从1到n整数中1出现的次数)

参考: https://troywu0.gitbooks.io/interview/整数中出现1的次数(从1到n整数中1出现的次数).html 题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13 ...

宵夜不要辣 发布于 2019-12-12 20:58 评论(0)阅读(13)
0

CodeForces - 5C(思维+括号匹配)

题意 https://vjudge.net/problem/CodeForces-5C 给出一个括号序列,求出最长合法子串和它的数量。 合法的定义:这个序列中左右括号匹配。 思路 这个题和普通的括号匹配有区别,并行的括号匹配也可以存在,比如()()(),这种答案就是长度为6。 用一个数组记录每个位置 ...

swineherd_MCQ 发布于 2019-12-12 13:39 评论(0)阅读(7)
0

CodeForces - 158C(模拟)

题意 https://vjudge.net/problem/CodeForces-158C 你需要实现类似 Unix / Linux 下的 cd 和 pwd 命令。 一开始,用户处于根目录 / 下。 对于 cd 命令,它的作用是跳转到某个路径。路径有相对路径和绝对路径,相对路径以文件夹名开头,表示当 ...

swineherd_MCQ 发布于 2019-12-12 11:15 评论(0)阅读(9)
0

CodeForces - 519D(思维+前缀和)

题意 https://vjudge.net/problem/CodeForces-519D 给定每个小写字母一个数值,给定一个只包含小写字母的字符串 s,求 s 的子串 t 个数,使 t满足: 首位字母相同,长度大于 1。 首尾字母除外的其余字母的数值之和为 0。 思路 考虑abca的值为1 1 - ...

swineherd_MCQ 发布于 2019-12-12 10:17 评论(0)阅读(9)
0

线性表链式存储结构

链式存储 :用一组任意的存储单元存储线性表中的数据元素。用这种方法存储的线性表简称线性链表。存储链表中结点的一组任意的存储单元可以是连续的,也可以是不连续的,甚至是零散分布在内存中的任意位置上的。 为了正确表示结点间的逻辑关系,在存储每个结点值的同时,还必须存储指示其直接后继结点的地址(或位置),称 ...

星空下聆听 发布于 2019-12-10 21:59 评论(0)阅读(4)
0

CSP-S 2019 游记

CSP-S2019参加时的状态(提供前车之鉴),以及当时的做法(如何以刚好过线的水平平稳地骗到刚好过线的分数),主要自己开心(大雾)。 ...

BlahDuckling747 发布于 2019-12-10 21:41 评论(0)阅读(28)
0

LeetCode刷题--无重复字符的最长子串(中等)

题目描述: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长 ...

小中配奇 发布于 2019-12-10 14:46 评论(0)阅读(19)
0

leetcode动态规划--基础题

"跳跃游戏" 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 思路 根据题目意思,最大跳跃距离,说明可以跳0 nums[i]的距离 可以把跳跃看成走nums[i]步,如果能走到下一位置则可以~~加油~~获取更多 ...

dionysun 发布于 2019-12-09 22:52 评论(0)阅读(8)
0

数据结构导论 三 线性表-顺序存储

线性表是什么样子呢? 类似这种,可以当作生活中流水线作业是一样的。 线性表是由n(N>=0)个数据元素(结点)比如a1,a2,a3....an组成的有限序列 数据元素的个数n定义为表的长度, 当n=0时为空表(null) 当n>0时为非空表 L=(a1....an) a1称为起始点 ,an为终端结点 ...

云小道 发布于 2019-12-09 22:48 评论(0)阅读(8)
0

【算法日常】判断环形链表

环形链表 题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/linked-list-cycle-ii 目前考虑到两种解法,但都需要辅助空间, 第一种 O(n) 第二种 O(1) 第一种 借助辅助字典进行判断 将走过的节点都记录在字典中,通过查询 ...

源码分析 发布于 2019-12-09 11:26 评论(0)阅读(7)
0

CodeForces - 460C(二分+差分)

题意 https://vjudge.net/problem/CodeForces-460C 一个长度为 n 的序列 a ,你有 m 次操作的机会,每次操作是将其中连续的 w 个元素增加 1 。最大化最终序列的最小值。 思路 最大化最小值,二分的套路题。 数据范围1e5,所以我们要O(n)check。 ...

swineherd_MCQ 发布于 2019-12-09 10:09 评论(0)阅读(9)
0

数据结构导论 二 时空性

通过上一章,https://www.cnblogs.com/X404/p/11984707.html中可以知道数据结构分为 1.逻辑结构 包含: 1)集合 2)线性结构 3)树形结构 4)图结构 2.存储结构 1)顺序存储 2)链式存储 3)索引存储 4)散列存储 以上也是重点需要进行了解的, 废话 ...

云小道 发布于 2019-12-08 20:54 评论(0)阅读(10)
0

第十六届浙江大学宁波理工学院程序设计大赛 E 雷顿女士与平衡树(并查集)

题意 链接:https://ac.nowcoder.com/acm/contest/2995/E来源:牛客网卡特莉正在爬树,此时她又在树梢发现了一个谜题,为了不令她分心以至于发生意外,请你帮她解决这个问题。 具体地来说,我们定义树上从u到v简单路径上所有点权中最大值与最小值的差值为这条路径的"平衡值 ...

swineherd_MCQ 发布于 2019-12-08 20:30 评论(0)阅读(15)
0

排序算法学习(一):冒泡排序

所谓排序即按照一定的规律将一组数据进行排列。排序算法的形式化定义如下:设存在一组无序序列​ ,并且存在一个函数​,在经过一系列对该序列中的元素位置调整后,使得新得到的序列满足对于任意的​,均有​(升序排序)或者​(降序排序)。针对不同的数据源的不同特性,人们设计出了不同的排序算法,以求对算法的时间复 ...

struggling2019 发布于 2019-12-08 20:20 评论(0)阅读(17)
1

LeetCode刷题--两数之和(简单)

题目描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因 ...

小中配奇 发布于 2019-12-06 21:34 评论(0)阅读(31)