自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 基本排序算法 (六种,堆排序除外)及其稳定性

1.冒泡排序冒泡排序就是依次比较相邻的两个元素,并且根据大小交换的过程。每一轮都能找出一个最大的元素,并让他能到对应的位置。举例:如果初始数组是。6,5,4,3,2,1第一次冒泡:索引一开始在0处。6 > 5交换 ,索引变为1,6 大于4 交换,依次,6 大于3交换,6 大于2 交换,6 大于1交换。得到5,4,3,2,1,6第二次冒泡因为已经找到了最大值,并把他放到了最右边,所以我们不用交换最后 一组了。得到 4,3,2,1,5,6第三,四,五,六次冒泡都是重复了以上过程

2022-01-13 20:33:15 600

原创 数据结构题型--回溯法

组合问题1.组合 力扣77用for循环来确定第一层,也就是第一个数的位置,用回溯来确定第二个数,终止条件就是大小相等时,这样就可以遍历完每一种可能的情况,剪。枝就把for循环中每次循环不需要的地方缩小范围就可以了。换句话说,如果for循环以后元素的个数已经不足我们要的个数了,就没必要搜索了。class Solution {List<List<Integer>> ans = new ArrayList<>();...

2022-01-04 18:53:06 348

原创 力扣数据结构题型总结 数组

首先想到的是双指针,但是两数之和无论如何都得有两层for循环,没办法优化。所以想到了用哈希表排重,利用空间换时间。class Solution {public int[] twoSum(int[] nums, int target) {int[] ans = new int[0];Map<Integer,Integer> res = new HashMap<&gt...

2021-12-16 17:14:23 380

原创 链表总结题型

1.两数相加 力扣2因为此题他们存储数字是链表逆序的,所以直接进行每一位相加即可。从链表头开始,每一位的值相加组成新链表的头,注意进位问题。然后l1与l2进行遍历后,再次相加组成新链表的下一位。重复过程最后返回新链表即可。class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode head = null;L...

2021-12-10 10:54:18 185

原创 数据结构题型总结之---------二叉树

第一类题型:基础的遍历问题1.前,中,后序遍历问题,都是通过递归调用来添加节点进列表,不同的是添加的顺序,前序是递归的每一次都将节点添加进来。先加后递归。而中序是左递归后加,然后右递归。后序是左递归右递归结束后再存入列表。例题:力扣前序:144中序:94后序:1452.层序遍历问题这里我选择用的是迭代法,首先建一个用来记录每层数量的队列path,建立一个最后返回的,用来装所有层遍历节点的最后返回列表res建立一个用来存放每层节点的ans列表,用path.size 与for循环

2021-12-06 15:12:11 3410

原创 力扣2021.11.25打卡

1.二叉搜索树的最近公共祖先看到这道题,首先想到的是迭代遍历,利用while循环,但是时间复杂度太高,所以利用二叉搜索树的特性,直接建立深度遍历搜索递归即可class Solution {TreeNode res = null;public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {dfs(root,p,q);return res;}public void dfs(TreeNod

2021-11-25 15:13:05 307

原创 力扣2021.11.23打卡

1.搜索二叉搜索树中的值 700就是搜索节点,但是因为二叉搜索树的特殊情况,左 < 中 <右,所以递归就可classSolution{publicTreeNodesearchBST(TreeNoderoot,intval){if(root==null)returnnull;if(root.val==val)returnroot;returnroot.val<val?...

2021-11-23 20:11:02 359

原创 力扣打卡2021.11.22

1.从中序与后序遍历二叉树 106看到这道题,想到的就是递归把整棵树化为左子树与右子树,但是需要不断地int出新数组,空间复杂度太高运行慢,还需要优化。copyOfRange(数组,左,右)方法要记住,左开右闭复制范围内的数组。*/classSolution{publicTreeNodebuildTree(int[]inorder,int[]postorder){intm=inorder.length;intn=p...

2021-11-22 17:56:41 736

原创 力扣2021.11.20打卡

1.二叉树的右视图 力扣199因为是从上到下的写入list,所以只需要把每层的最后一个节点写入res即可,用简化版的层序遍历即可classSolution{Queue<TreeNode>queue=newLinkedList<>();List<Integer>res=newArrayList<>();publicList<Integer>rightSideView(TreeNode...

2021-11-20 16:05:38 287

原创 MYSQL基础总结--关系代数总结

二 关系代数的一些概念及其内容1.一些正式命名与 非正式命名非正式 命名 正式命名table relationcolumn header (列标题) attributerow ...

2021-11-17 19:53:40 632

原创 力扣打卡 2021.11.17

二叉树属性问题:java1.路径之和一:112此题只是简单判断是否具有这样的路径,所以判断一些特殊情况,如根节点为空时false,如无子孙节点时判断节点值是否等于判断的值,在排除后进行递归即可。classSolution{publicbooleanhasPathSum(TreeNoderoot,inttargetSum){if(root==null)returnfalse;if(root.left==null...

2021-11-17 19:12:14 2984

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除