- 博客(9)
- 收藏
- 关注
原创 2020-11-15 面向对象的C++
面向对象的C++一、类与对象面向对象编程的主要思想构成问题的各个事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述一个事务在解决问题中经过的步骤和行为。类的声明...
2020-11-16 15:46:47
96
原创 2020-11-03 C++基础知识
C++基础一、Hello World!#include<iostream>using namespace std;int main(){ cout<<"Hello World!"<<endl; return 0;}#include< iostream >这不是C++语句,是一个预处理语句,编译器的预处理器把输出流的标准头文件包括在本程序中,所以不需要在句末加分号。#include< > 与 #include" “区别&l
2020-11-03 21:38:38
696
原创 LeetCode144.二叉树的前序遍历
二叉树的前序遍历题目:给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3]进阶: 递归算法很简单,你可以通过迭代算法完成吗?通过次数189,342提交次数281,031方法一:递归直接递归输出前序遍历。/** * Definition for a binary tree node. * struct TreeNode { * int val; * .
2020-10-27 10:15:01
140
原创 LeetCode763. 划分字母区间
763.划分字母区间字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。示例:输入:S = "ababcbacadefegdehijhklij"输出:[9,7,8]解释:划分结果为 "ababcbaca", "defegde", "hijhklij"。每个字母最多出现在一个片段中。像 "ababcbacadefegde", "hijhklij" 的划分是错误的,因为划分的片段数较少。提示:S的长度
2020-10-23 10:19:17
118
原创 2020-10-21剑指offer-二叉树的最近公共祖先
剑指 Offer 68 - II. 二叉树的最近公共祖先给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p =
2020-10-21 14:33:24
116
原创 2020-10-19 排序
排序一、插入排序直接插入排序算法步骤:时间复杂度O(n^2),空间复杂度O(1)。直接插入排序代码如下:#include<bits/stdc++.h>using namespace std;#define MAXNUMS 999999int main(){ int n = 8; int a[n] = {49,38,65,97,76,13,27,49}; for(int i=1;i<n;i++) { if(a[i]&
2020-10-19 21:09:30
152
原创 2020-10-18 查找
查找一、顺序查找从表的一端向另一端遍历,若找到要查找的值,则查找成功;若遍历完整个表后,仍未找到要查找的值,则查找失败。for(int i = 0 ;i < numsSize;i++){ if(nums[i] == key) return i;}return -1;二、折半查找(二分查找)条件:表采用顺序存储结构,表中数据有序排列。创建整型变量low = 0 ,high = numSsize - 1当 low <= high 时,循环执行如下操作:创建整型变量mid
2020-10-18 16:29:24
102
原创 2020-10-17 全排列
Problem Description给出一个n, 请输出n的所有全排列Input读入仅一个整数n (1<=n<=9)Output一共n!行,每行n个用空格隔开的数,表示n的一个全排列。并且按全排列的字典序输出。SampleInput3SampleOutput1 2 31 3 22 1 32 3 13 1 23 2 1解题思路:代码:#include<bits/stdc++.h>using namespace std;#define MAX
2020-10-17 22:12:43
151
原创 2020-10-15 图的应用
一、最小生成树1. 普里姆算法连通图G如下:最小生成树过程如下:#include<bits/stdc++.h>using namespace std;#define MAXNUMS 999999typedef struct{ char vexs[100]; int arcs[100][100]; int vexnum,arcnum;}AMGraph;struct{ char adjvex; int lowcost;}cl
2020-10-15 16:37:29
165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人