![](https://img-blog.csdnimg.cn/8363a9ad9d884798b390a5b89716bdab.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
文章平均质量分 87
数据结构专栏
xyk:
当然,你也可以
展开
-
剑指offer在排序数组中的二分法应用总结
34. 在排序数组中查找元素的第一个和最后一个位置 题解 - 力扣(LeetCode)给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。思路:分别找到target的右边界和target-1的右边界,然后将target-1的边界-1放进int[]数组中输出,随后returnreturn res。原创 2023-03-08 21:16:47 · 355 阅读 · 1 评论 -
Hashtable是什么?它和Hashmap有什么区别?
2.3Hashtable为什么安全?三、Hashtable的缺点原创 2023-04-08 18:09:13 · 1036 阅读 · 1 评论 -
(新手必看)HashMap是什么?
那么HashMap什么时候进行扩容呢?当hashmap中的元素个数超过数组大小*loadFactor时,就会进行数组扩容,loadFactor的默认值为0.75,也就是说,默认情况下,数组大小为16,那么当hashmap中元素个数超过16*0.75=12的时候,就把数组的大小扩展为2*16=32原创 2023-04-05 18:21:12 · 16218 阅读 · 2 评论 -
【Java数据结构】堆与优先级队列(堆)的详解
Java集合框架中提供了PriorityQueue和PriorityBlockingQueue两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的。原创 2023-01-12 21:05:23 · 730 阅读 · 3 评论 -
关于【网格结构】岛屿类问题的通用解法DFS(深度遍历)遍历框架+回溯+剪枝总结
最近在刷力扣时遇见的问题,自己总结加上看了力扣大佬的知识总结写下本篇文章,我们所熟悉的 DFS(深度优先搜索)问题通常是在树或者图结构上进行的。而我们今天要讨论的 DFS 问题,是在一种「网格」结构中进行的。岛屿问题是这类网格 DFS 问题的典型代表。网格结构遍历起来要比二叉树复杂一些,如果没有掌握一定的方法,DFS 代码容易写得冗长繁杂。原创 2023-03-03 17:48:15 · 1351 阅读 · 1 评论 -
Java数据结构LinkedList单链表和双链表模拟实现及相关OJ题秒AC总结知识点
一、单链表1.1链表的概念及结构1.2无头单向非循环链表模拟实现1.3测试模拟代码1.4链表相关面试OJ题1.4.1 删除链表中等于给定值 val 的所有节点1.4.2 反转一个单链表1.4.3 给你单链表的头结点 head ,请你找出并返回链表的中间结点1.4.4 输入一个链表,输出该链表中倒数第k个结点1.4.5 合并俩个有序链表二、双链表2.1双向链表模拟实现2.2LinkedList其他常用方法介绍2.3ArrayList和LinkedList的区别方法解释尾插 e。原创 2023-03-01 14:45:05 · 622 阅读 · 2 评论 -
Java数据结构中链表分割及链表排序使用快速排序、归并排序、集合排序、迭代、递归,刷题的重点总结
Java数据结构中链表分割及链表排序使用快速排序、归并排序、集合排序、迭代、递归,刷题的重点总结原创 2023-02-20 21:35:06 · 1968 阅读 · 2 评论 -
Java实现扑克牌游戏(简易炸金花)
在游戏开始之前要创建扑克牌,其中扑克牌要具有花色和数字,而且要记住除了大小王以外,扑克牌工有四种花色,52张牌。要重写toString方法!在玩之前,要将买来的牌用Random函数进行重新打乱,以便于每个人手中的牌大小不一样。要先将52张扑克牌创建出来,并添加到集合中,以便于后续操作。每个人要进行抓牌,设置每个人手中抓五张牌,三个人进行游戏。原创 2023-02-13 21:15:17 · 3731 阅读 · 3 评论 -
Java数据结构中二叉树的深度解析及常见OJ题
对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从0至n-1的结点一一对应时称之为完全二叉树。最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)1. 某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为( B)2. 若规定只有根结点的二叉树的深度为1,则深度为K的二叉树的最大结点数是 2^k-1(k>=0)。原创 2023-02-10 21:32:24 · 734 阅读 · 3 评论 -
Java数据结构中栈和队列深度解析
单链表和双链表实现栈:头插头删,单链表实现队列:尾插头删,双链表实现栈:头和尾都可以插入和删除原创 2023-02-08 21:45:58 · 648 阅读 · 1 评论 -
详细掌握java和数据结构中七大基于比较的排序算法基本原理及实现(非常详细的讲解)
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。原创 2023-02-04 21:54:42 · 381 阅读 · 3 评论