![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 69
364.99°
忙中岁月忙中遣,我本愚来性不移
展开
-
基础算法:二分查找
周更贴原创 2023-10-15 23:41:58 · 217 阅读 · 1 评论 -
算法1.2
java算法:二叉树,递归,循环迭代原创 2022-04-24 21:20:29 · 538 阅读 · 0 评论 -
算法1.1
Java算法:复杂度分析(大O),递归,双指针,快慢指针数据结构:数组、链表原创 2022-04-23 20:39:53 · 348 阅读 · 0 评论 -
数据结构——树Ⅰ
1.概述树: 由n(n>=1)个有限结点组成一个具有层次关系的集合。特点:每个结点有零个或多个子结点;没有父结点的结点为根结点;每一个非根结点只有一个父结点;每个结点及其后代结点整体上可以看做是一棵树,称为当前结点的父结点的一个子树;相关术语:结点的度:一个结点含有的子树的个数A结点的度为6叶结点(终端结点):度为0的结点如:B、H、I、J、K、N、O、M分支结点(非终端结点):度不为0的结点结点的层次:从根结点开始,根结点的层次为1,之后每一层+1如:A的原创 2021-11-18 19:59:22 · 1425 阅读 · 0 评论 -
数据结构——符号表
1.概述符号表: 将一个键于一个值联系起来(键值对),可以通过键(key)来查找对应的值(value)。2.符号表的实现package symboltable;public class SymbolTable<Key,Value> { //内部结点类 private class Node{ //键 private Key key; //值 private Value value; //下一原创 2021-11-18 10:59:54 · 796 阅读 · 0 评论 -
数据结构——队列
1.概述队列: 一种基于先进先出(FIFO)的数据结构,只能在一端进行插入,在另一端进行删除操作的特殊线性表2.实现队列import java.util.Iterator;public class Queue<T> implements Iterable<T> { //内部结点类 private class Node{ public T item; public Node next; public Nod原创 2021-11-17 22:41:28 · 209 阅读 · 0 评论 -
数据结构——栈
1.概述栈: 一种基于先进后出(FILO)的数据结构,只能在一端进行插入和删除操作的特殊线性表。2.实现栈package stack;import java.util.Iterator;public class Stack<T> implements Iterable<T>{ //内部结点类 public class Node{ public T item; public Node next; publ原创 2021-11-17 21:47:09 · 143 阅读 · 0 评论 -
数据结构——线性表
1.概述线性表: n个具有相同特性的数据元素的有限序列。头结点:没有前驱元素的结点尾结点:没有后驱元素的结点前驱元素: A1在A2之前,A1就为A2的前驱元素后驱元素: A2在A1之后,A2为A1的后驱元素2.顺序表2.1 顺序表的实现顺序表: 是在计算机内存中以数组的形式保存的线性表特点:存储单元地址连续(循序存储)逻辑上相邻的数据元素在物理地址上也相邻package linkedlist;public class SequenceList<T>{原创 2021-11-17 20:48:45 · 700 阅读 · 0 评论 -
手敲一个能实现迭代的类
对于一些没有索引的数据结构,不能直接使用foreach循环遍历,但是实现Iterator接口之后就能使用foreach遍历,简化遍历。1.实现步骤分析1.先让目标类实现Iterable接口,重写iterator方法public interface Iterable<T> { /** * Returns an iterator over elements of type {@code T}. * * @return an Iterator. *原创 2021-11-10 17:57:31 · 385 阅读 · 0 评论 -
Java算法——大O记法
算法时间复杂度分析;算法空间复杂度分析;大O记法目录1.时间复杂度分析1.1.事后分析估算方法1.2.时候分析估算方法2.空间复杂度分析2.1.基本数据类型内存占用2.2.实例化对象的内存占用3.函数的渐进增长4.大O记法4.1.推导大O阶的标识法的规则:4.2.常见的大O阶4.3.最坏情况分析1.时间复杂度分析用来计算算法时间损耗情况1.1.事后分析估算方法将算法执行若干次,并计量执行算法所需要的时间1.设置循环(如for循环),执行若干次算法2.利用long start/end = S原创 2021-05-27 10:32:42 · 408 阅读 · 1 评论