数据结构与算法
ALTLI
这个作者很懒,什么都没留下…
展开
-
算法设计与分析学习笔记
课程为山东大学软件学院人工智能专业2020年大二下学期的“算法设计与分析”课程原创 2020-03-17 13:35:05 · 3192 阅读 · 5 评论 -
山东大学软件学院算法设计与分析(考试)——期末考试回忆版
原定于大二下学期的“2020-2021算法设计与分析考试”因疫情延后到大三开学第一周考试时间:2020年9月5日总的来说和2019-2020年的题几乎一样,19-20年的题可参考https://blog.csdn.net/weixin_43371116/article/details/104736487一.(1)强连通分量正确性证明。(2)DAG中最长路径的算法设计,写出bellman方程和伪代码,并分析时间复杂度。二.(1)白色路径定理的证明。(2)假设最短路径含有K条边,证明迭代K次可以原创 2020-09-06 22:20:40 · 3781 阅读 · 0 评论 -
有界深度优先搜索算法解决八数码问题
《人工智能导论》(第四版)课后题5.3 C++实现题目:运行结果:C++代码:#include <iostream>#include <vector>using namespace std;struct Octal{ int arr[4][4]; // 存储八数码 int parent; // 父亲的值 int current; // 当前的值...原创 2020-04-26 17:50:55 · 14219 阅读 · 0 评论 -
基于QT实现九大排序的动态演示
在不久前完成我自己的残缺棋盘动态演示课程设计后,我又帮同学大致完成了一个排序算法的动态演示(狂敲5天代码)由于代码量很大,我就不再这里展示了,代码都发到下面的百度网盘链接中链接:https://pan.baidu.com/s/1TzPQWmXeKDPOik4BT2yCJg提取码:4ebhCSDN下载:https://download.csdn.net/download/weixin_43360801/12148404这两个链接里内容的都是一样的Qt:5.14.1Qt Creator:4.11.原创 2020-02-10 21:44:53 · 2877 阅读 · 4 评论 -
数据结构——残缺棋盘覆盖(问题+算法+UI界面)
总述:这是山东大学软件学院AI班大二下学期的数据结构课程设计(假期完成课设,开学第一周演示),假期花了1天时间完成了这个课程设计,代码在下面的连接中百度网盘链接:链接:https://pan.baidu.com/s/1RdlO2fgefQIRixebHlr_Ow提取码:95mh花5天时间帮同学写的课程设计基于QT实现九大排序的动态演示文章目录一.残缺棋盘问题二.算法三.UI界面一.残缺棋盘问题残缺棋盘是一个有2k×2k2^{k}×2^{k}2k×2k 个方格的棋盘,其中恰有一个方格残缺,如下图原创 2020-02-04 17:05:45 · 7887 阅读 · 1 评论 -
山东大学软件学院数据结构(考试)——期末考试回忆版
考试时间:2020年1月9日 8:30~10:30,山东大学软件学院大二上数据结构考试试卷结构和题目:一. 简答题(20分)给一个序列插入堆栈中,又给出两个序列,问能否通过堆栈操作,得到这后给出的两个序列给一个二叉树前序序列和中序序列,写出后序序列写出将四维数组以列主映射方式映射到一维数组的映射公式含有n个非叶节点的m阶B-树,计算出该树非叶节点所含有的最少的关键字总数给一个AOV图,写出拓扑排序算法的思想,并写出图中所有的拓扑序列二. 应用题(50分)散列表Hash(k) = k%原创 2020-01-09 12:01:15 · 4752 阅读 · 3 评论 -
满m叉树的性质
满m叉树的性质转载自https://blog.csdn.net/sinat_36231857/article/details/81569323 ...转载 2020-01-04 13:20:44 · 2748 阅读 · 3 评论 -
关于AVL树的总结
关于AVL树的总结定义AVL树一棵空的二叉树是AVL树一棵非空的二叉树是AVL树,必须满足:(1)左右子树也是AVL树(2)左右子树高度之差的绝对值小于等于1AVL搜索树既是AVL树也是二叉搜索树索引AVL搜索树既是AVL树也是索引二叉搜索树性质任意n个元素都能构成一棵高度为O(logn)的AVL树AVL搜索树的搜索、插入、删除的时间复杂性都为O(logn)平衡因子:左...原创 2019-12-29 14:13:48 · 2770 阅读 · 0 评论 -
山东大学软件学院数据结构
数据结构知识梳理山东大学数据结构期末考试知识点梳理第一章1.给了一个问题,可以用递归解决,熟练的运用递归,可以将一个递归的改为非递归的第二章1.时间复杂性和空间复杂性,给一个算法,能分析时间复杂性2.熟练掌握各种排序和搜索算法3.矩阵的运算第三章1.给一个算法,熟练使用渐进符号第四章1.无第五章1.数组描述的插入、删除、优缺点第六章1.线性表的链表描述,会使用链表,相...原创 2019-12-12 10:48:30 · 3318 阅读 · 0 评论 -
各种排序
数据结构与算法——排序本文的排序包括:冒泡排序,选择排序,插入排序,名次排序(计数排序),箱子排序,基数排序,堆排序,归并排序,快速排序交换两个数的代码,共3步:void swap(int& x, int& y){ // 交换整数x和y int temp = x; x = y; y = temp;}1.冒泡排序冒泡排序:在一次冒泡过程中如果左边元素大于右边元素,则交换。这样一次冒泡过程结束后,最大元素肯定在最右端。冒泡排序:template <class T原创 2019-12-06 22:18:16 · 456 阅读 · 0 评论 -
二叉树操作的总结
1.根据前序序列和中序序列创建二叉树2.求二叉树中节点的个数3.求二叉树中叶子节点的个数4.求二叉树的高度5.求二叉树的宽度6.求二叉树第K层的节点个数7.判断二叉树是否是完全二叉树8.求二叉树中节点的最大距离9.求二叉树中两个节点的最近公共祖先节点10.输出一个二叉树的前序序列11.输出一个二叉树的中序序列12.输出一个二叉树的后序序列13.输出一个二叉树的层次序列14.左右子树互换15.判断两棵树是否是相同16.判断第二棵树是否是第一棵树的子树17.合并两棵二叉树18.原创 2019-12-09 19:14:24 · 393 阅读 · 0 评论