算法与数据结构
文章平均质量分 77
常见算法问题的实现与基本数据结构的操作
Allison-L
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Javascript实现岛问题:一个矩阵中只有0和1两种值,每个位置都可以和自己的上、下、左、右 四个位置相连,如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛?
问题描述: 一个矩阵中只有0和1两种值,每个位置都可以和自己的上、下、左、右 四个位置相连,如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛?举例: 下面这个矩阵中有4个岛。let arrIsland = [ [0,0,1,0,1,0], [1,1,1,0,1,0], [1,0,0,1,0,0], [0,0,0,0,0,1]];实现思...原创 2019-10-03 23:47:36 · 2043 阅读 · 0 评论 -
JavaScript实现切金条问题
问题描述:一块金条切成两半,是需要花费和长度数值一样的铜板的。比如长度为20的金条,不管切成长度多大的两半,都要花费20个铜 板。一群人想整分整块金条,怎么分最省铜板?例如,给定数组{10,20,30},代表一共三个人,整块金条长度为 10+20+30=60。金条要分成10,20,30三个部分。 如果, 先把长 度60的金条分成10和50,花费60;再把长度50的金条分成20和30, 花费...原创 2019-10-07 16:53:33 · 643 阅读 · 1 评论 -
数据结构|顺序表的建立(实验1)
实验一线性表的基本操作实现及其应用一、实验目的1、熟练掌握线性表的结构特点,掌握顺序表的基本操作。2、巩固 C++相关的程序设计方法与技术。3、学会使用顺序表解决实际问题。二、实验内容1、顺序表的建立与操作实现 建立 n 个元素的顺序表(n 的大小和表里数据自己确定),实现相关的操作:输出,插入,删除,查找等功能。编写完整程序实现,程序语言不限定,使用技术形式不定。...原创 2017-09-19 14:22:35 · 3493 阅读 · 1 评论 -
数据结构|创建学生成绩的顺序表(实验2.1)
一、实验目的巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。二、实验内容建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义SeqList(T ...原创 2017-09-26 16:33:40 · 6744 阅读 · 1 评论 -
数据结构|创建学生成绩的单链表(实验2.2)
一、实验目的巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。二、实验内容建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义SeqList(T...原创 2017-09-28 09:28:03 · 2731 阅读 · 0 评论 -
数据结构|创建学生成绩的双链表(实验2.3)
一、实验目的巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。二、实验内容建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义public: ...原创 2017-10-08 11:24:58 · 604 阅读 · 0 评论 -
数据结构|创建学生成绩的静态链表(实验2.4)
一、实验目的巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。二、实验内容建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义public: ...原创 2017-10-08 17:48:01 · 505 阅读 · 0 评论 -
数据结构|创建学生成绩的间接寻址(实验2.5)
一、实验目的巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。二、实验内容建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义public: ...原创 2017-10-10 18:50:57 · 318 阅读 · 0 评论 -
数据结构|总结线性表的几种存储结果
一、顺序存储结构——顺序表顺序表是用一段地址连续的存储单元依次存储线性表的数据元素。所以通常用数组来存储线性表,用数组存放,这意味着我们要确定数组的长度,分配固定长度的数组空间。 ①特点:内存中地址连续,支持随机查找,按位查找算法的时间复杂度为O(1),按值查找的平均时间性能是O(n),插入删除操作的平均时间性能是O(n),适用于需要大量访问元素,而没有或少量增添或删除元素...原创 2017-10-11 17:15:17 · 712 阅读 · 0 评论 -
数据结构|顺序栈的实现(实验3.1)
一、实验目的1、熟练掌栈的结构特点,掌握栈的顺序存储结构和实现。2、学会使用栈解决实际问题。二、实验内容1、自己确定结点的具体数据类型和问题规模,建立一个顺序栈,实现栈的压栈和出栈操作。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义;template < typename T >class SeqStack{ public:...原创 2017-10-18 15:25:40 · 5722 阅读 · 0 评论 -
数据结构|链栈的实现(实验3.2)
一、实验目的1、熟练掌栈的结构特点,掌握栈的顺序存储结构和实现。2、学会使用栈解决实际问题。二、实验内容1、自己确定结点的具体数据类型和问题规模,建立一个链栈,实现栈的压栈和出栈操作。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义;template < typename T >class LinkStack{ publi...原创 2017-10-18 16:09:36 · 1297 阅读 · 0 评论 -
数据结构|顺序队列的实现(实验3.3)
一、实验目的1、熟练掌队列的结构特点,掌握队列的顺序存储和实现。2、学会使用队列解决实际问题。二、实验内容1、自己确定结点的具体数据类型和问题规模,建立一个顺序队列,实现队列的入队和出队操作。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义;template<typename T>class Cirqueue{...原创 2017-10-18 16:53:59 · 1425 阅读 · 0 评论 -
数据结构|链队列的实现(实验3.4)
一、实验目的1、熟练掌队列的结构特点,掌握队列的顺序存储和实现。2、学会使用队列解决实际问题。二、实验内容1、自己确定结点的具体数据类型和问题规模,建立一个链队列,实现队列的入队和出队操作。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义;template <typename T> class LinkQ...原创 2017-10-18 17:24:55 · 961 阅读 · 0 评论 -
数据结构|用栈实现十进制转换成二进制(实验3.5)
一、实验目的1、熟练掌栈的结构特点,掌握栈的顺序存储结构和实现。2、学会使用栈解决实际问题。二、实验内容1、自己确定结点的具体数据类型和问题规模,建立一个顺序栈,实现栈的压栈和出栈操作。三、实验步骤1、依据实验内容分别说明实验程序中用到的数据类型的定义;class SeqStack { private: int data[Siz...原创 2017-10-25 15:04:45 · 16070 阅读 · 0 评论 -
数据结构|二叉树的链式存储(实验6.2)
一、实验目的1、熟练理解树和二叉树的相关概念,掌握的存储结构和相关操作实现;2、掌握树的顺序结构的实现;3、学会运用树的知识解决实际问题二、实验内容1、自己确定一个二叉树(树结点类型、数目和结构自定)利用链式存储结构方法存储。实现树的构造,并完成:1)用前序遍历、中序遍历、后序遍历输出结点数据;2)以合理的格式,输出各个结点和双亲、孩子结点信息;...原创 2017-11-09 11:26:15 · 1545 阅读 · 0 评论 -
js:数组实现队列和栈、栈实现队列、队列实现栈
目录一、利用数组结构实现大小固定的队列和栈二、仅用队列结构实现栈结构三、仅用栈结构实现队列结构四、总结一、利用数组结构实现大小固定的队列和栈1.数组结构 实现 队列 ①队列的特点:先进先出,后进后出。 ② 注意:需要定义 start、end变量,以标记 出队和入队位置;还要定义一个size变量,约束出入队的行为。<script type="te...原创 2019-08-24 22:38:54 · 633 阅读 · 0 评论 -
js:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字
题目:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。一、解题思路1.定义一个辅助数组 zero ,里面全是0;2.循环输入的数组 arr ,将 arr 每个位置的值(arr[i])对应到辅助数组zero里的...原创 2019-08-29 11:36:33 · 1823 阅读 · 0 评论 -
web前端开发面试中常见的算法题(JS)
前言最近在准备秋招,做过了大大小小的公司的面试题,发现除了基础知识外,算法还是挺重要的。特意整理了一些常见的算法题,添加了自己的理解并实现。除此之外,建议大家还可以刷刷《剑指offer》(但我还没刷完?,任重道远呐)。此外,左神在牛客网上也有算法课程,听了基础班的感觉还不错,起码让我这个算法小白也能快速地理解了很多问题,知识付费的时代,这个真的是良心课程了。就我个人而言的话,平时为了解决一...原创 2019-10-07 16:57:43 · 20425 阅读 · 3 评论
分享