![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣
我就不信这个邪
这个作者很懒,什么都没留下…
展开
-
力扣109题--有序链表转平衡二叉树
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x), next(next.原创 2021-11-10 16:05:34 · 862 阅读 · 0 评论 -
力扣 179. 最大数
给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。示例 1:输入:nums = [10,2]输出:"210"示例2:输入:nums = [3,30,34,5,9]输出:"9534330"示例 3:输入:nums = [1]输出:"1"示例 4:输入:nums = [10]输出:"10"一个数字数组拼接出最大的数,nums = [3,30,34,5,9],显...原创 2021-10-31 09:28:45 · 3760 阅读 · 0 评论 -
搞定数据结构之单调栈系列
一、单调栈介绍单调栈非常使用的数据结构,在普通栈的基础上加以优化,使其更加完美的解决一些特殊的普通栈无法解决的问题。 单调栈顾名思义就是栈中元素从上到下是有顺序的,从栈底到栈顶递增我叫他--递增栈,反之递减栈; 从一段序列我们来认识单调栈,找到每一个数字右边第一个比其大的数,没有设为-1,如 序列 3 2 1 4 5,用递减栈来维护该序列,用同等大小的另一个数组存储对应位置的右边最近的大于该元素的数; 首先...原创 2021-10-17 11:23:38 · 149 阅读 · 0 评论 -
PAT1007 素数对猜想
#include <iostream>#include <valarray>#include <vector>using namespace std;bool IsPrime(int num){ if (num == 2 || num == 3 || num == 5){ return true; } if (num % 6 != 1 && num % 6 != 5){ retu.原创 2021-06-13 15:09:56 · 58 阅读 · 0 评论 -
已知前序和中序构造原二叉树解析(C++)
首先简单给一段序列:pre [] = {A, B, D, E, C, F}in [] = {D, B, E, A, C, F }原树:{A, B, C, D, E, NULL, F}先序序列的首个结点一定为根节点,然后我们又从中序遍历知,其序列的根的左侧为左树,右侧为根的右树;将树按先左后右依次创建,在左树中又可存在左子树;由前序序列性质知,根结点后为左侧结点,然后为右侧根节点,右侧子树,因此由前序和中序可以还原一棵原二叉树。下面讲解一下代码实现原理,主要为递归创建,首先创建原创 2021-10-07 11:25:53 · 797 阅读 · 0 评论 -
力扣将二叉排序树转为递增类链表 897. Increasing Order Search Tree
将二叉排序树转为类链表,一种简单方法可以中序遍历将结果保存到数组中,遍历该数组创建类链表返回;该方法较为繁琐。方法二: 在中序遍历过程中改变指针的指向使其左孩子的右指针指向父节点,父节点左孩子指针置空;因为中序遍历先为最左节点,左右孩子均为空,所以需要一个哑结点和一个指向当前孩子节点的指针;然后从最左侧孩子开始,将哑结点右孩子指向根节点,根节点左孩子置空,当前节点向上移动到根节点;依次向上回溯改变指针指向,这里一个特殊情况,当node节点为tem...原创 2021-10-07 11:46:32 · 89 阅读 · 0 评论 -
1006 换个格式输出整数
#include <iostream>using namespace std;int main() { //定义字符串数组 string str[12] = { "1", "12", "123", "1234", "12345", "123456", "1234567", "12345678", "123456789","B", "S"}; int array[3]; string s; while(s.size() > 3 || s..原创 2021-06-09 13:23:26 · 109 阅读 · 2 评论 -
力扣第496. Next Greater Element I
题目描述:给你两个 没有重复元素 的数组nums1 和nums2,其中nums1是nums2的子集。请你找出 nums1中每个元素在nums2中的下一个比其大的值。nums1中数字x的下一个更大元素是指x在nums2中对应位置的右边的第一个比x大的元素。如果不存在,对应位置输出 -1 。nums1 与 nums2 无重复元素且1 为 2 的子集,可以先遍历 2 中每一个元素,找到对应位置元素的右边第一个比其大的元...原创 2021-10-05 16:06:48 · 106 阅读 · 0 评论 -
力扣第71题 简化路径
今日收获:stringstream类,定义在 sstream.h 头文件中,<sstream>定义了三个类:istringstream、ostringstream和stringstream,分别用来进行流的输入、输出和输入输出操作。 sstream可以实现数据类型转换、字符串拼接、作为getline(sstream对象, str, '/')的参数读取字符。 string 的 find() 函数,path.find('/', pos)...原创 2021-10-08 18:41:20 · 106 阅读 · 0 评论