![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法基础第一话
文章平均质量分 62
luolvzhou
大家一起学习啊!!!
展开
-
leetcode 第5题 最长回文子串(动态规划解法)
leetcode 第五题 最长回文子串 的 动态规划解法 是一个经典的 动态规划 解决中等题型的 入门指导。因为 这里用到了状态转移方程的 二维数组形式 dp[][]原创 2021-06-14 14:13:28 · 229 阅读 · 0 评论 -
解决算法问题常用的一种方法,前后指针法
前后指针法是 解决很多算法问题当中经常会出现的一种解决方法,也被称为是滑动窗口解法。很多人在遇到这种问题的时候 ,可能连答案,题解什么的都懒得推敲和总结就放弃了,原创 2021-06-13 18:21:59 · 515 阅读 · 0 评论 -
二叉树相关知识,如求深度和求节点个数
#include <iostream>using namespace std;typedef struct node { struct node *lChild; struct node *rChild; char data;}BiTreeNode,*BiTree;void createBiTree(BiTree &T) { char ...原创 2019-04-14 16:00:44 · 990 阅读 · 0 评论 -
二叉树的创建与遍历
对于二叉树,这是让很多初学者很头疼的一个数据结构,基本上很多人出了链表,栈和队列的坑之后,就又全都死在树和图的这个坑里了。 其实对于一个用链式结构构成的数据结构来说,树和链表其实有很大的相似之处,链表不过是在结构体中定义了自己的数据部分和指针部分,数据部分用来存储数据,指针部分用来存储下一个节点的地址,然后就可以通过给结构体对象开辟空间的办法来创建节点,通过将指针部分...原创 2019-04-14 14:20:29 · 10262 阅读 · 2 评论 -
链表中可以学习到很多知识
class MyLinkedList {public: struct ListNode { int val; ListNode *next; ListNode(int x) :val(x), next(NULL) {} }; ListNode *head; MyLinkedList() { head ...原创 2019-03-02 13:20:15 · 120 阅读 · 0 评论 -
二叉树代码
#include<iostream>using namespace std;typedef struct BiTNode{ char data; struct BiTNode *lchild, *rchild;}BiTNode, *BiTree;void PreOrderTraverse(BiTree T)//二叉树的先序遍历{ if (T == N...原创 2019-02-25 22:28:00 · 577 阅读 · 0 评论 -
经典链表搭建过程
以下这段链表的搭建过程可以让人学习到很多的东西#include <iostream>#include "stdlib.h";using namespace std;class MyLinkedList {public: struct ListNode { int val; ListNode * next; Lis...转载 2019-02-28 14:14:35 · 141 阅读 · 0 评论 -
折半插入排序
折半插入排序是一个平均算法时间复杂度为(n*logn)的排序算法,这个排序算法的执行速度要快于直接插入排序算法执行过程如下:设定一个arr={5,3,1,4,2};首先(5),3,1,4,2 将第一个数字放入括号中,对括号里的内容进行二分查找,比对3所在的位置,然后将3插入括号中的正确位置中,得到(3,5),1,4,2接着对(3,5)括号中的数字进行二分查找,寻找1所在的位置,将1插入...原创 2019-02-09 10:26:17 · 319 阅读 · 0 评论 -
直接插入排序
直接插入排序是一个平均算法时间复杂度为n^2(n的平方)的一个排序算法,其最坏时间复杂度为 n^2(n的平方),最好时间复杂度为n。(为什么),而他的执行过程又是怎么样的,咱们通过它的代码和原理来细细分析。直接插入排序的过程: 给定一个数组arr={5,3,4,2,1} 过程:(5),3,4,2,1 => (5,3),4,2,1首先对括号中的数值进行排序,排成了(3,5)...原创 2019-02-08 18:31:49 · 227 阅读 · 0 评论 -
算法基础第一话
2018年3月24号,星期六,晴今天第一次效仿曾经大佬们所写的博客,坚持每天联系5道ACM习题,不放弃。今天共写了5道关于处理数组问题的编程题,用Java写的,思想很简单,很白痴,都是算法的基础,以此每天练习5道,弥补大学的缺憾。第一道 从排序中删除重复项这道题给出了一个有序的数组去删除重复的项数,从数组的第一个开始依次往后查探,当两个相邻项的值不一样时,就将那个不一样的项往数组的第二个放置,依次...原创 2018-03-24 14:25:16 · 195 阅读 · 0 评论