- 2025-01-08C++ 复习总结记录六
C++复习总结记录六模板初阶主要内容1、泛型编程2、函数模板3、类模板4、STL简介一泛型编程如何实现一个通用的交换函数voidSwap(int&left,int&right){inttemp=left;left=right;right=temp;}voidSwap(double&left,double&right)
- 2025-01-08第一天 / 704. 二分查找 / 27. 移除元素 / 977. 有序数组的平方
704.二分查找左闭右闭classSolution{public:intsearch(vector<int>&nums,inttarget){intleft=0;intright=nums.size()-1;//定义target在左闭右闭的区间里,[left,right]while(left<=right){
- 2025-01-08二分法查找
二分法查找算法应用的条件:数组按照顺序排列【基础】;数组中没有重复的元素【否则返回值元素的下标不唯一】;二分法查找主要难点在于边界条件的确定,常见的区间的定义一般有两种:左闭右闭,即[left,right],或者左闭右开,即[left,right);第一种:左闭右闭,即[left,right],代码如下:cl
- 2025-01-08【代码随想录】刷题记录(94)-划分字母区间
题目描述:给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。返回一个表示每个字符串片段的长度的列表。 示例1:输入:s="ababcbacadefegdehijhklij"
- 2025-01-08刷题记录(回顾)二叉树-2,3,4,5 二叉树的各种遍历
二叉树共有两类遍历方式(理解前中后序+层序)DFS:深度优先搜索:即前中后三序遍历所谓前中后序就是:“左”,“中”,“右”这三个元素组成的排列中“中”的位置,中代表处理节点,左代表访问左孩子右代表访问右孩子 前序遍历:中左右,先处理节点后访问左右孩子 中
- 2025-01-08数据结构与算法之二叉树: LeetCode 107. 二叉树的层序遍历 II (Ts版)
二叉树的层序遍历IIhttps://leetcode.cn/problems/binary-tree-level-order-traversal-ii/description/描述给你二叉树的根节点root,返回其节点值自底向上的层序遍历。(即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)示例1输入:root=[3,9,20,null,nul
- 2025-01-08422.大学生HTML5期末大作业 —【清新的个人博客主题网页(7页)】 Web前端网页制作 html5+css3
目录一、网页简介二、网页文件三、网页效果四、代码展示1.html2.CSS五、总结1.简洁实用2.使用方便3.整体性好4.形象突出5.交互式强欢迎来到我的CSDN主页!您的支持是我创作的动力!Web前端网页制作、网页完整代码、大学生期末大作业案例模板完整代码、技术交流等,有
- 2025-01-07代码随想录:二叉树的递归遍历
代码随想录:二叉树的递归遍历现在是找借口时间,一开始是期末考试太忙了,后来是过年放假,一晃这么久没写题了,这样不好。,看了一下我现在leetcode才40多道题呢定个目标,三月之前刷完代码随想录,并且把hot100的简单中等题都写了。/***Definitionforabinarytreenode.*structTre
- 2025-01-07二分查找疑难点-区间问题
大家在写二分查找时,对while()循环中的left<right还是left<=right以及right=mid还是right=mid-1经常会搞混,下面理清这里面的逻辑。 首先说明一下二分查找的使用条件,1.元素需要有序,这样才能二分,2.无重复元素,因为重复元素会导致查找成功返回的下标
- 2025-01-07力扣-数组-35 搜索插入位置
解析时间复杂度要求,所以使用二分的思想,漏掉了很多问题,这里记录在left-right=1时,已经找到了插入位置,但是没有赋值,然后break,所以导致一直死循环。if(right-left==1){result=right;break;}在和最右侧数比较时,漏掉了相等时就直接找到,所以在数组是[1,3],target
- 2025-01-07[数据结构学习笔记8] 二叉查找树(Binary Search Trees)
二叉查找树,它是一类特殊的二叉树,除了基本的二叉树规则外,还要满足:1.左边的子节点要小于父节点值2.右边的子节点要大于父节点值 图示:添加节点: 42 | | 24 99 | |
- 2025-01-07209. 长度最小的子数组
长度最小的子数组给定一个含有n个正整数的数组和一个正整数target。找出该数组中满足其总和大于等于target的长度最小的子数组[numsl,numsl+1,...,numsr-1,numsr],并返回其长度。如果不存在符合条件的子数组,返回0。示例1:输入:target=7,nums=[2,3,1,2,4,3]
- 2025-01-07力扣刷题:二叉树OJ篇(下)
大家好,这里是小编的博客频道小编的博客:就爱学编程很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!!目录1.(1)题目描述(2)解题思路2.对称二叉树(1)题目描述(2)解题思路3.另一棵树的子树(1)题目描述(2)解题思路4.二叉树的构建及遍历(1)题目描述(2
- 2025-01-07双指针算法专题
目录1.移动零1.1算法原理1.2算法代码 2.复写零2.1算法原理 2.2算法代码3.快乐数3.1算法原理3.2算法代码4.盛水最多的容器4.1算法原理 4.2算法代码5.有效三角形的个数5.1算法原理5.2算法代码6. 剑指offer:和为s的两个数(原)6.1算法
- 2025-01-06python中的二叉树
在刷算法题中,二叉树是常见的题型,掌握二叉树的基本语法和常见操作是非常重要的。以下是一些在Python中常用的二叉树语法及操作,特别是刷算法题时用到的。1.二叉树的定义:首先定义二叉树的节点结构。每个节点通常有三个属性:val(节点的值),left(左子节点),right(右子节点)。#Definitionfo
- 2025-01-06定制Allure报告
定制Allure报告自定义Logo图标效果图实现步骤定位资源文件夹:首先,您需要定位到allure/plugins/custom-logo-plugin/static文件夹。这个文件夹通常包含Allure报告使用的静态资源,包括默认的Logo图像。放置新Logo:将您的新Logo图像文件放置到allure/plugins/custom-logo-
- 2025-01-05leetcode(hot100)6、7
解题思路:先排序再利用双指针思想然后再去重处理。去重要nums[i]==nums[i-1]考虑-1,-1,2这种情况。classSolution{public:vector<vector<int>>threeSum(vector<int>&nums){sort(nums.begin(),nums.end());vector<vector<int>>r
- 2025-01-05leetcode(hot100)4
解题思路:双指针思想利用两个for循环,第一个for循环把所有非0的全部移到前面,第二个for循环将指针放在非0的末尾全部加上0。还有一种解法就是利用while循环双指针条件,当不为0就两个指针一起移动,为0就只移动右指针。不为0时交换左右数值,为0就不交换了。(如果数组没有0,那么快慢
- 2025-01-05【C语言】数组——二分查找
题1704.二分查找【简单】intsearch(int*nums,intnumsSize,inttarget){intleft=0,right=numsSize-1;intmid=(left+right)/2;intresult=-1;while(left<=right){if(nums[mid]==target){r
- 2025-01-05数据结构(排序算法)
插入排序插入排序(InsertionSort)是一种简单直观的排序算法,其原理可以简述如下:1.分已排序区间和未排序区间:将数组分为已排序区间和未排序区间。初始时,已排序区间只包含数组的第一个元素,而未排序区间包含除第一个元素之外的所有元素。2.依次将未排序区间中的元素插入到已
- 2025-01-05弹性波动力学笔记(九) 应力张量的摩尔圆描述
3.10Mohr'scircleforstresstensorHerewewillshowthatoncetheprincipalvaluesoftensorhavebeenfound,thenormalandshearstressvectorcanbedeterminedgraphicallyusingasimplegeometricalconstructionbasedonthreecircleswithradi
- 2025-01-04124.二叉树中的最大路径和
/***@param{TreeNode}root*@return{number}*///子树的最大路径和=左子树提供的最大路径和+根节点值+右子树的的最大路径和,//分别递归遍历左子树和右子树的最大路径和,两者之前取一个最大值;返回;//最后里面,要注意最后得出的是一个负数,直接返回0;否则正常的数据
- 2025-01-04leetCode 283.移动零
题目给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例1:输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]示例2:输入:nums=[0]输出:[0]思路:双指针。如果数组没有0,
- 2025-01-04leetCode 33:搜索旋转排序数组
题目:整数数组nums按升序排列,数组中的值互不相同。在传递给函数之前,nums在预先未知的某个下标k(0<=k<nums.length)上进行了旋转,使数组变为[nums[k],nums[k+1],...,nums[n-1],nums[0],nums[1],...,nums[k-1]](下标从0开始计数)。例如,[0,1,2,4,5,6,7]在下标3
- 2025-01-04【优选算法】Binary-Blade:二分查找的算法刃(下)
文章目录1.山脉数组的峰顶索引2.寻找峰值3.寻找旋转排序数组中的最小值4.点名希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力!本篇接上一篇二分查找,主要通过部分题目熟悉二分查找的进阶使用,重点强调二段性,找到两个区间不同的地方在哪,多画图划分界限