一:作用最长公共子序列的问题常用于解决字符串的相似度,是一个非常实用的算法,作为码农,此算法是我们的必备基本功。二:概念举个例子,cnblogs这个字符串中子序列有多少个呢?很显然有27个,比如其中的cb,cgs等等都是其子序列,我们可以看出子序列不见得一定是连续的,连续的那是子串。我想大家已经了解了子序列的概念,那现在可以延伸到两个字符串了,你可以看出cnblogs和belong的公共子序列吗?
分类:
编程语言 时间:
2020-09-09 18:57:09
阅读次数:
40
课程地址:数据结构与算法 | 第四周辅导 红皮第七章 面向对象方法(一) 程序设计方法: 结构化程序设计 面向对象的程序设计 类 对象 类 变量:描述对象属性(数据成员) 函数:描述对象行为(成员还是) 定义类 有三种访问控制方式: class 类名 { public: 公有成员:任何地方都可以访问 ...
分类:
编程语言 时间:
2020-09-07 19:02:39
阅读次数:
46
1.简单理解稀疏数组 可以把稀疏数组理解为只保存有效数据的一种数组,其针对的自然是有大量无用数据的数组。直接上图 原数组 稀疏数组 稀疏数组第一行类似于表格的表头,依次代表原数组的行数、列数、非零数个数(用零代表无用数据)。第一行之下的每一行都代表有一个非零数,第一列的数字代表非零数的行下标(数组下 ...
分类:
编程语言 时间:
2020-09-04 17:11:04
阅读次数:
43
一、试编写一个算法,给有向无环图G中每个顶点赋以一个整数序号,并满足以下条件:若从顶点i至顶点j有一条弧,则应使i<j。 答: 分析题目,我们很容易知道本题应当采用拓扑排序的方法。我们先统计所有点的入度,然后把当前剩下的点中入度为0的点编号,把这个点删去,更新与它相邻的点的入度,直到重复所有点处理完 ...
分类:
编程语言 时间:
2020-09-03 16:44:39
阅读次数:
39
一、试写一个判别给定二叉树是否为二叉排序树的算法,设此二叉树以二叉链表作存储结构,且树中结点的关键字均不同。 答: 由分析可以知道,通过教材所学的知识我们很容易知道二叉排序树的特点。按照中序遍历的顺序,应当符合当前遍历到的节点值大于前一个遍历到的节点值,所以我们最终得到的中序遍历序列是一个有序序列, ...
分类:
编程语言 时间:
2020-09-03 16:43:50
阅读次数:
48
一、假设二叉排序树以后继线索链表作存储结构,编写出该二叉排序树中所有大于a且小于b的关键字的算法。 答: 本实现要求输出二叉排序树中的所有大于a且小于b。由二叉排序树的相关知识我们很容易知道:用递归的方式进行遍历,遇到大于a且小于b的关键字时即输出。 该算法实现的伪代码如下: /* 函数名称:输出二 ...
分类:
编程语言 时间:
2020-08-31 13:11:45
阅读次数:
55
前言 本文收录于专辑:http://dwz.win/HjK,点击解锁更多数据结构与算法的知识。 你好,我是彤哥,一个每天爬二十六层楼还不忘读源码的硬核男人。 上一节,我们使用位图介绍了12306抢票算法的实现,没有收到推送的同学可以点击上方专辑查看,或者在公主号历史消息中查看。 在上一节的最后,彤哥 ...
分类:
其他好文 时间:
2020-08-13 12:26:30
阅读次数:
49
内存 计算机的作用 用来存储和运算二进制的数据 import numpy as np np.iinfo('int8') iinfo(min=-128, max=127, dtype=int8) 变量的概念 就是表示计算机中的某一块内存。 a = 10 计算机的某一块内存空间会有两个原始的属性 大小: ...
分类:
编程语言 时间:
2020-08-05 23:25:40
阅读次数:
107
package com.lfw.queue; import java.util.Scanner; public class ArrayQueueDemo { public static void main(String[] args) { //测试一把 //创建一个队列 ArrayQueue que ...
分类:
编程语言 时间:
2020-08-05 00:04:25
阅读次数:
71
稀疏数组 ps:记录韩顺平数据结构与算法 一、需求分析 因为二维数组的很多值是默认值0,因此记录了很多没有意义的数据,可采用稀疏数组解决此问题。 二、基本介绍 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法是: 1)记录数组一共有几行几列,有多 ...
分类:
编程语言 时间:
2020-07-28 13:57:53
阅读次数:
69