首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
算法知识梳理
订阅
泽毛
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
算法知识梳理(10) - 二叉查找树
下面我们输入一个数组p,通过它建立一个二叉查找树,并通过 递归中序遍历 的方式打印出树中的元素,按照二叉查找树的定义,最后输出的结果必然是递增排序的。 如果待删除结点只有一个孩子结点,那么用 该孩子结点替换待删除结点 即可。 第三步:将待删除结点的左子树的根节点嫁接到替换结点 …
算法知识梳理(3) 字符串算法第二部分
给定一个文本文件作为输入,查找其中最长的重复子字符串。例如,"Ask not what your country can do for you, but what you can do for your country"中最长的重复字符串是“can do for you”,第二…
算法知识梳理(5) 数组第二部分
直到i遍历到N-1为止,此时p[0,..,k-1]就是数组p最小的K个元素。 数组中的元素有正有负,在该数组中找出一个连续子数组,要求该连续子数组中各元素的和最大,这个连续子数组便被称作最大连续子数组。比如数组{2,4,-7,5,2,-1,2,-4,3}的最大连续子数组为{5,…
算法知识梳理(2) 字符串算法第一部分
实现一个函数,将字符串p中的所有空格都替换成为指定的字符串r。 遍历原始的字符串p,统计原先字符串中空格的个数spaceNum。 创建一个新的数组n,用于存放替换后的字符串。由于原先字符串中空格也占了一个位置,因此新数组n的长度为p.len + (r.len - 1) * sp…
算法知识梳理(6) 数组第三部分
这个问题的关键信息是输入数组是 递增排序 的,指定数字必然是连在一起的,因此,我们只需要找到该数字第一次和最后一次出现的下标位置,那么就可以得到该数字出现的数字。 如果大于两个元素,那么取中点位置的元素,如果该元素比需要查找的数字小,那么就说明需要查找的元素在其右侧,否则就说明…
算法知识梳理(8) 二分查找算法及其变型
将pStart或pEnd修改的条件进行合并.
算法知识梳理(1) 排序算法
最近在看上学时候总结的一些东西,发现之前针对排序、字符串、数组、链表等,总结了一些面试时候常用的算法代码,因此打算整理一下分享给大家。
算法知识梳理(13) - 二叉树算法第三部分
采用后序遍历的思路,先将左右子树转换成链表,再将左右子树的链表通过中间结点连接起来。 输入一个整数数组,判断该数组是不是某二叉查找树的后序遍历的结果,假设输入的数组的任意两个数字都互不相同。 这棵树为二叉查找树,因此对于任意结点,它的左子树小于该结点,右子树大于该结点,并且左右…
算法知识梳理(12) - 二叉树算法第二部分
输入一个整数和一棵二叉树,打印出和与输入整数相等的所有路径,从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。 路径经过左子树的最深结点,通过根结点,再到右子树的最深结点,在这种情况下,最大距离等于左子树的高度加上右子树的高度在加上2。 路径不穿过根结点,而是左…
算法知识梳理(11) - 二叉树相关算法第一部分
递归的方式比较容易理解,只需要改变函数调用和打印元素值语句之间的顺序即可,例如先序遍历,就先打印该结点元素的值,再分别打印左子树和右子树即可。 假设建立了一棵如下的二叉树,元素3为第一层,1、5为第二层,-1、2、4、6为第三层,要求按照层的顺序依次打印出每一层的所有元素。 这…