0

【LeetCode】141.环形链表

题目描述 "141.环形链表" 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 1,则在该链表中没有环。 题目解析 方法一:哈希表 解题思路 首先可以想到的方法就是遍历链表并将遍历的链表Node ...

握不住手中沙 发布于 2020-04-04 21:27 评论(0)阅读(22)
0

思考:线性规划对偶与拉格朗日乘数法

拉格朗日乘数法和对偶线性规划问题的联系 拉格朗日乘数法解题的基本思想 下面以一个二元函数为例子解释拉格朗日乘数法用于求解条件极值问题的思想。 我们给定一个二元函数$z$: $$ z=f(x,y) $$ 和一个约束条件: $$ \varphi(x,y)=0 $$ 为了求解$z=f(x,y)$在附加条件 ...

Allegro_VivAce 发布于 2020-04-04 02:20 评论(0)阅读(102)
0

Leetcode刷题笔记 - 《剑指Offer》面试题06 - 从头到尾打印链表

从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10000 我的思路: 先从头到尾遍历链表,将链表节点中的值存入新开辟的数组空间,再将数组顺序倒置。 C++ ...

李橙皮er 发布于 2020-04-03 16:55 评论(0)阅读(35)
0

矩阵连乘问题的算法复杂度的计算--卡塔兰数(Catalan数)的数学推导和近似公式

author: cust-- ZKe 这里以连乘积加括号问题为背景: 由于矩阵的乘积满足结合律,且矩阵乘积必须满足左边矩阵的列数的等于右边矩阵的行数,不同的计算顺序,需要的乘法运算次数不一样。加括号可以改变计算顺序,合理安排计算顺序可以大大降低计算次数。 给乘积算式加括号的方法数是一个计数问题。它的 ...

心拍数#0822 发布于 2020-04-03 12:40 评论(1)阅读(45)
1

动态规划 - 矩阵链的乘法问题

"1.1具体实例" "1.2子问题的划分和递推方程" "2.动态规划算法的递归实现" "3.动态规划算法的迭代实现" "4.动态规划算法的要素" 这里用 矩阵链的乘法问题 来说明动态规划算法的设计要素。 $A_1,A_2,..,A_n$表示$n$个矩阵的序列,其中$A_i$为$P_{i 1} \ti ...

HIIM 发布于 2020-04-03 11:18 评论(0)阅读(293)
0

数据结构导论之第五章图

单源最短路径 给定一个带权有向图 G=(V,E),其中每条边的权是非负实数。另外,给定 V 中的一个 顶点, 称为源。要计算从源到其他各顶点的最短路径长度。这里的长度是指路径上各边权 值之和。这个问题通常称为单源最短路径问题。 Dijkstm 算法求单源最短路径问题 ...

君子生非异也 发布于 2020-04-02 20:56 评论(0)阅读(46)
0

数据结构导论之第六章查找表

一个索引顺序表由两部分组成:一个索引表和一个顺序表。其中的顺序表在组织形式上 与普通的顺序表完全相同,而索引表本身在组织形式上也是一个顺序表。索引表通过索引将 顺序表分割为若干块,而顺序表呈现出“按块有序”的性质。 ...

君子生非异也 发布于 2020-04-02 14:16 评论(0)阅读(45)
0

PAT B# 1025 反转链表

题目链接 思路 1.设置结构体,设一个栈 ~~~ struct node { int address, data, next, order; }; ~~~ 2.order的初始值为maxn。接着从first开始遍历,每k个node入栈,同时设置order=count++ 3.sort按照order由 ...

cainiao11024 发布于 2020-04-02 11:03 评论(0)阅读(26)
0

数据结构导论之第七章排序

直接插入排序(Straight Insertion Sorting)是一种简单的排序方法,它的基本思想是依次将每个记录插入到一个已排好序的有序表中去,从而得到一个新的、记录数增加 1 的有序表。直接插入排序类似图书馆中整理图书的过程。 ...

君子生非异也 发布于 2020-04-01 23:20 评论(0)阅读(28)
0

一篇文章让你了解动态数组的数据结构的实现过程(Java 实现)

[TOC] 数组基础简单回顾 1. 数组是一种数据结构,用来存储 同一类型值 的集合。 2. 数组就是 存储数据长度固定的容器 ,保证 多个数据的数据类型要一致 。 3. 数组是一种 引用数据类型 。 4. 简单来说,数组就是把需要存储的数据排成一排进行存放。 5. 数组的索引从 0 开始计数,最后 ...

踏雪彡寻梅 发布于 2020-04-01 22:50 评论(0)阅读(203)
0

单链表上的基本操作

单链表上的基本操作 1.头插法建立单链表 如果没有设立头结点,则每次插入新节点后,将结点的地址赋值给 。 生成单链表中数据元素的顺序与插入顺序相反。 2.尾插法建立单链表 增加一个 尾指针 。 3.按序号查找结点值 查找第 个结点的值,如果找到,将其保存到 中。 4.按值查找结点 5.插入 方法: ...

稀有的猪 发布于 2020-04-01 16:57 评论(0)阅读(30)
1

常见排序算法总结分析之选择排序与归并排序-C#实现

本篇文章是排序算法总结与分析系列的第二篇,介绍选择排序中的简单选择排序与堆排序,以及常用的归并排序。排序算法总结与分析系列是对常用的算法进行一个汇总分析,包括每个算法的基本思想,实现代码,时间复杂度,空间复杂度,稳定性,算法分析等。涵盖的算法,目前包括但不限于冒泡排序,快速排序,简单插入排序,希尔排... ...

iwiniwin 发布于 2020-04-01 09:04 评论(0)阅读(222)
0

求一个序列中的主元素

问题(2013 统考408真题):已知一个整数序列A = (a~0~,a~1~,...,a~n 1~), 其中0≤a~i~≤n (0≤in/2 (0≤p~k~≤n,1≤k≤m),则称 x为A的主元素 。例如,A=(0,5,5,3,5,7,5,5),则5为主元素,又如A=(0, 5, 5,3, 5, ...

稀有的猪 发布于 2020-03-31 22:11 评论(0)阅读(39)
0

递归-汉诺塔问题

汉诺塔传说:汉诺塔问题,是源于印度一个古老的益智玩具;大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。 数学抽象:如下图 ...

xuyaowen 发布于 2020-03-31 20:29 评论(0)阅读(38)
0

剑指Offer(第二版)面试题目分析与实现合集

本博客为针对 剑指Offer 所有面试题的分析与实现,具体实现请参考:https://github.com/yaowenxu/codes/tree/master/剑指Offer 剑指Offer(第二版)面试题目分析与实现-面试的流程 剑指Offer(第二版)面试题目分析与实现-面试需要的基础知识 剑 ...

xuyaowen 发布于 2020-03-31 19:37 评论(0)阅读(24)
0

一篇文章让你了解二分搜索树的数据结构的实现过程(Java 实现)

[toc] 树结构简介 在线性数据结构中,数据都是排成一排存放的;而树结构则是非线性的,存储在其中的数据是按分支关系组织起来的结构,就像自然界中的树那样。如下图所示: 从图可以看出树结构是有一种层次感的,每一个点可以有多个分支,这种组织结构是非常有优势的,简单来说树结构本身是一种天然的组织结构。 对 ...

踏雪彡寻梅 发布于 2020-03-31 09:34 评论(2)阅读(247)
0

PAT 1018 Public Bike Management(30分)

PAT 1018 Public Bike Management(30分) There is a public bike service in Hangzhou City which provides great convenience to the tourists from all over th ...

稀有的猪 发布于 2020-03-30 23:04 评论(0)阅读(30)
0

数据结构导论之第三章(栈、队列、数组)

由于计算机的内存结构是一维的,因此用一维内存来表示多维数组,就必须按某种次序将数组元素排成一列序列,然后将这个线性序列存放在存储器中;又由于对数组一般不做插入和删除操作,也就是说,数组一旦建立,结构中的元素个数和元素间的关系就不再发生变化。因此,一般都是采用顺序存储的方法来表示数组。 ...

君子生非异也 发布于 2020-03-30 21:49 评论(0)阅读(54)
0

数据结构(四):队列

一、概述 队列(Queue):遵循FIFO(First In First Out 先进先出)原则 队列只允许在一端进行插入操作,而在另一端进行删除操作。允许插入的端是队列尾,允许删除的是队列头 二、结构示意图 向一个空队列中一次插入a、b、c三个元素 将队列中的元素一个个删除 三、代码示例 Link ...

猪肉王子-17 发布于 2020-03-30 16:21 评论(0)阅读(24)
0

数据结构和算法:Python实现选择排序

程序如下: def selection_sort(alist): n=len(alist) for i in range(n-1):#到n-1停止是因为最后一个肯定是最大的无须比较 min_index=i for k in range(i+1,n):#到n停止是因为到最后一个不一定是最小的,所以需要 ...

Geeksongs 发布于 2020-03-30 15:38 评论(0)阅读(21)