Java开发技术

article/2025/9/20 15:51:13

1、基础技术

数据结构与算法

  逻辑结构:数据对象中的数据元素之间的逻辑关系
1.集合结构:集合结构中的数据元素除了同属一个集合外,没有其他关系。
2.线性结构:线性结构中的数据元素之间是一对一的关系。
3.树形结构:树形结构中的数据元素之间是一对多的关系。
4.图形结构:图形结构中的数据元素之间是多对多的关系。
  物理机构:数据的逻辑结构在计算机中的储存形式
1.顺序储存结构:把数据元素储存在连续的存储单元。
2.链式储存结构:把数据元素储存在任意的存储单元(可以是连续或者不连续)。
image

知识点链接
算法复杂性分析 对一个算法需要多少计算时间和存储空间作定量的分析
线性表、链表数据结构详解
队列、栈数据结构详解
基础排序算法详解
快排与并归排序详解
二分搜索、哈希表详解
并查集算法详解
树,基本概念,二叉树(遍历)详解
图、深度优先遍历、广度优先遍历
最小生成树、最短路径详解
Bloom Filter/Bitmap

数据库技术

  • MySQL

    知识点链接
    Mysql执行计划与索引索引是帮助mysql高效获取数据的数据结构
    使用explan关键字可以知道mysql是如何处理SQL语句的
    mysql之SQL索引优化使用有索引的列或主键进行order by 操作
    mysql锁与事务隔离级别详解
    mysql B+tree存储
    mysql主从同步原理与优化方案
    mysql读写分离proxy与jdbc方式对比
    mysql垂直与水平分库分表
  • Redis

    知识点链接
    Redis特性介绍与实操Redis 有 5 种基础数据结构
    string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合)
    Redis集群演变过程&amp,集群部署数据结构&五种数据类型对象
    Redis集群高可用伸缩架构
    Redis cluster开发与通信协议
    群集分配算法与动态水平扩容,监控
    缓存击穿与雪崩预防策略
    Redis与mysql数据库同步数据一致性解决方案

23种设计模式 GOF

  创建型模式(5种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式
  结构型模式(7种):适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式
  行为型模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式

知识点链接
工厂模式(Factory)用来实例化有共同接口的类,工厂模式可以动态决定应该实例化那一个类
单例模式(Singleton)
代理模式(Proxy)
委派模式(Delegate)
观察者模式(Observer)
策略模式(Strategy)
模版模式(Template)

应用开发

  • Spring

    知识点链接
    Spring Ioc容器设计理念与源码Spring容器设计中,BeanFactory实现容器的基本功能,ApplicationContext作为容器高级形态存在
    Spring事务失效与解决方案详解
    Spring MVC源码与原理深度解析
    Spring5 日志框架、Testing、WebFlux等新特性
    Spring aop源码与原理深度解析
    Spring源码如何阅读
    熟悉常见的Spring面试题
    详解Spring IOC、AOP、MVC应用
  • MyBatis

    知识点链接
    整体认识mybatis与mybatis体系结构
    Mybatis核心应用配置与原理解析
    Mybatis核心流程与源码分析
    Mybatis与Spring整合原理详解
    一级、二级缓存使用场景详解
    徒手教大家实现mybatis与思想
    Configuration、SqlSession、SqlSessionFactory、Executors
    MappedStatement、StatementHandler、ResultSetHandler等核心概念
    MyBatis设计模式:工厂、构建、单例、责任链、代理、模版、装饰模式详解

2、工作技术

消息中间件

  消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。

  • RocketMQ

    知识点链接
    初识消息中间件,在分布式应用场景
    部署与快速开始&特性详解
    RocketMq监控与高可用详解
    RocketMq特性详解
    RocketMq源码分析详解
    RocketMq高可用&伸缩部署详解
  • Kafka

    知识点链接
    kafka集群搭建与使用
    kafka设计原理分析
    kafka分布式实战详解
    kafka高可用&伸缩部署详解

Java并发编程

  并发编程的目的是为了让程序运行的更快,但是并不是启动更多的线程,就能让程序最大限度的并发执行。在进行并发编程时,如果希望通过多线程执行任务让程序运行的更快,会面临非常多的挑战,比如上下文切换的问题,死锁的问题,以及受限于硬件和软件的资源限制问题,本章会介绍几种并发编程的挑战,以及解决方案。

知识点链接
Java并发之Executor线程池体系 Executors.newCachedThreadPool(无界线程池,自动线程回收)
Executors.newFixedThreadPool(固定大小的线程池);
Executors.newSingleThreadExecutor(单一后台线程);
Java并发之lock与Java内存模型
Java并发之CAS原理
并发编程之定时线程池
Java并发DCL详解
Java并发Fork-join框架原理
Java并发ThreadPoolExecutor原理

分布式技术

  分布式系统是一个硬件或者软件组件分布在不同网络计算机上,彼此之间仅仅通过消息传递来进行通信和协调的系统。一个分布式系统通常具有以下特点:
  1.分布式:在空间上随意分布,
  2.对等性:组成分布式系统的所有节点都是对等的。
  3.并发性
  4.缺乏全局时钟。在分布式系统很难确定多个时间的顺序,原因就是分布式系统缺乏一个全局的时钟。
  5.故障总是会发生。

  分布式系统体系机构面对着诸多的难题和挑战:
  1.通信异常:分布式系统需要在各个节点之间进行网络通信,而网络本身是不可靠的。
  2.网络分区:当网络由于发生异常情况,最终导致组成分布式系统的所有节点,只有部分节点之间能够进行通信,另一些节点则不能。这种现象称为网络分区,俗称脑裂。
  3.三态:分布式系统的每一次请求与响应存在特有的三态概念,即成功、失败、超时。
  4.节点故障:指组成分布式系统的服务器节点出现的宕机或“僵死”现象。

  • Zookeeper

    知识点链接
    Zookeeper介绍 用来解决分布式应用中经常遇到的一些数据管理问题
    如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等
    Zookeeper快速入门与集群部署
    Zookeeper之zkclient&curator
    开发分布式Zookeeper项目
    Zookeeper核心源码分析
    Zookeeper容灾与扩容详解
    Zookeeper企业跨机房运维
  • Dubbo

    知识点链接
    Dubbo介绍
    快速掌握Dubbo企业常规应用
    Dubbo调用模块详解
    Dubbo协议模块源码剖析
    Dubbo容错机制与高扩展性分析
    Dubbo设计原理分析与源码详解
    Dubbo负载均衡策略分析
    Dubbo管控后台管理与部署详解
  • Netty

    知识点链接
    Netty介绍 Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持,作为一个异步NIO框架
    Java NIO BIO AIO详解
    Netty线程模型详解
    Netty编码解码框架解析
    Netty RPC框架实战
    Netty TCP粘包/拆包解决方案
    Netty企业级性能调优方案

微服务技术

  微服务是系统架构上的一种设计风格,它的主旨是将一根原本独立的系统拆分多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作。被拆分的每一个小型服务都围绕着系统中某一项或一些耦合度较高的业务功能进行构建,并且每个服务都维护这自身的数据存储、业务并发、自动化测试案例以及独立部署机制。由于有了轻量级的通信协作基础,所有这些微服务可以使用不同的语言来编写。

  • Spring Boot

    知识点链接
    Spring Boot介绍 Spring Boot框架的核心就是自动配置,只要存在相应的jar包,Spring就帮我们自动配置。
    还集成了嵌入式的Web服务器,系统监控等很多有用的功能
    Spring Boot快速启动开始及核心配置详解
    Spring Boot热部署详解
    Spring Boot集成Mybatis
    Spring Boot集成Redis缓存
    Spring Boot核心组件actuator
  • Spring Cloud

    知识点链接
    Spring Cloud介绍 一站式解决方案
    hystrix实现服务限流,降级,熔断详解
    分布式配置中心Config详解
    Zuul和Gateway统一网关,服务路由,过滤器使用
    Fegin声明式服务调用详解及源码分析
    Hystrix实现自定义接口降级,监控数据及监控数据聚合
    微服务技术架构
  • 虚拟容器

    知识点链接
    Docker介绍 基于LXC技术之上搭建的Container容器引擎
    将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。
    Docker的镜像,仓库,容器讲解
    Docker快速开始搭建Docker环境
    DockerFile,DockerCompose使用及服务编排实现
    Kubernetes介绍与快速开始
    Kubernetes部署一套生产环境

JVM调优

  1.年轻代大小选择
    响应时间优先的应用
    吞吐量优先的应用
  2.年老代大小选择
    响应时间优先的应用
    吞吐量优先的应用
  3.较小堆引起的碎片问题

知识点链接
JVM调优JVM调用(一)
JVM整体结构与垃圾回收算法介绍
什么是JVM内存模型
类加载器深入解析
GC日志格式详解,从日志排查问题
GC调优实战
各种垃圾回收使用场景
面试JVM题分析详解
互联网项目JVM调优实战

3、提升技术

源码分析

  • Spring源码深入分析

    知识点链接
    Ioc容器设计理念与bean的注册原理分析及其源码解读
    @Configuration原理分析,依赖注入底层原理分析
    容器启动流程,bean的生命周期及其源码分析
    bean的循环依赖源码分析,bean构建过程中各大后置处理器作用及其源码分析
    Spring AOP源码与原理深度解析,Cglib和Jdk动态代理区别
    Spring MVC源码与原理解析
    @EnableWebMvche MessageConverter源码分析
    Spring事务失效之谜,事务隔离级别和事务传播属性源码分析
  • Mybatis源码深入分析

    知识点链接
    Mybatis核心流程与源码分析
    Mybatis执行器源码分析
    Mybatis缓存源码分析 CachingExecutor一级 二级缓存源码分析
    Configuration、SqlSession、SqlSessionFactory、源码分析
    ExecutorMappedStatement、StatementHandler、ResultSetHandler源码分析
    Mabatis执行引擎Executor、BaseExecutor、SimpleExecutor
    ReuseExecutor、BatchExecutor、
    Mybatis注解@Select、@Result*、@Insert、@Delete、@Update分析
  • ShardingSphere源码深入分析

    知识点链接
    Sharding-jdbc核心流程与源码分析
    分布式事务&分布式主键源码详解
    Sql解析:SQLParsingEngine源码详解
    Sql路由:ParsingSQLRouter源码解析
    Sql改写:SQLRewriteEngine、SQLToken、SQLBuilder源码解析
    Sql执行:SQLExecuteCallback源码分析
    Sql归并:MergeEngine源码分析
  • Jedis/Redis源码深入分析

    知识点链接
    Jedis与Redis工作原理通讯详解
    Jedis与Redis工作序列化协议详解
    Redis内存结构与数据结构模型
    RESP协议+、-、$、*序列化协议详解
  • Zookeeper源码深入分析

    知识点链接
    Zookeeper核心流程与源码分析
    Zookeeper序列化协议详解
  • Java并发源码深入分析

    知识点链接
    Java并发线程池源码详解
    Java、Map、List、Queue结构详解

项目实战

知识点链接
Flasher-分布式缓存框架基于Redis Cluster实现
QPS千万级别
Api-Gateway-网关系统Java Rest API系统
源码双十一电商系统基于Dubbo的大型分布式、高可用电商平台
可用于互联网电子商务系统

4、拓展技术

国内互联网开源框架

知识点链接
阿里巴巴的Nacos-动态服务发现、配置和服务管理平台
阿里巴巴的Sentinel-高可用流量管理框架
百度的UidGenerator-分布式ID生成器
百度的Disconf分布式配置管理平台
阿里巴巴的Dubbo-Java高性能开源RPC框架
阿里巴巴的RocketMQ-Java分布式消息中间件
京东金融的Sharding-sphere-Java数据库中间件
国美的Flasher-分布式缓存框架
美团的分布式调度XXL-JOB

国内互联网大咖

知识点链接
https://ke.qq.com/course/408007

在这里插入图片描述在这里插入图片描述

后端技术

技术名称官网
Spring Framework容器http://projects.spring.io/spring-framework/
SpringMVCMVC框架http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#mvc
Apache Shiro安全框架http://shiro.apache.org/
Spring session分布式Session管理http://projects.spring.io/spring-session/
MyBatisORM框架http://www.mybatis.org/mybatis-3/zh/index.html
MyBatis Generator代码生成http://www.mybatis.org/generator/index.html
PageHelperMyBatis物理分页插件http://git.oschina.net/free/Mybatis_PageHelper
Druid数据库连接池https://github.com/alibaba/druid
FluentValidator校验框架https://github.com/neoremind/fluent-validator
Thymeleaf模板引擎http://www.thymeleaf.org/
Velocity模板引擎http://velocity.apache.org/
ZooKeeper分布式协调服务http://zookeeper.apache.org/
Dubbo分布式服务框架http://dubbo.io/
TBSchedule & elastic-job分布式调度框架https://github.com/dangdangdotcom/elastic-job
Redis分布式缓存数据库https://redis.io/
Solr & Elasticsearch分布式全文搜索引擎http://lucene.apache.org/solr/ https://www.elastic.co/
Quartz作业调度框架http://www.quartz-scheduler.org/
Ehcache进程内缓存框架http://www.ehcache.org/
ActiveMQ消息队列http://activemq.apache.org/
JStorm实时流式计算框架http://jstorm.io/
FastDFS分布式文件系统https://github.com/happyfish100/fastdfs
Log4J日志组件http://logging.apache.org/log4j/1.2/
Swagger2接口测试框架http://swagger.io/
sequence分布式高效ID生产http://git.oschina.net/yu120/sequence
AliOSS & Qiniu & QcloudCOS云存储https://www.aliyun.com/product/oss/  http://www.qiniu.com/ https://www.qcloud.com/product/cos
Protobuf & json数据序列化https://github.com/google/protobuf
Jenkins持续集成工具https://jenkins.io/index.html
Maven项目构建管理http://maven.apache.org/

前端技术

技术名称官网
jQuery函式库http://jquery.com/
Bootstrap前端框架http://getbootstrap.com/
Bootstrap-tableBootstrap数据表格http://bootstrap-table.wenzhixin.net.cn/
Font-awesome字体图标http://fontawesome.io/
material-design-iconic-font字体图标https://github.com/zavoloklom/material-design-iconic-font
Waves点击效果插件https://github.com/fians/Waves
zTree树插件http://www.treejs.cn/v3/
Select2选择框插件https://github.com/select2/select2
jquery-confirm弹出窗口插件https://github.com/craftpip/jquery-confirm
jQuery EasyUI基于jQuery的UI插件集合体http://www.jeasyui.com
React界面构建框架https://github.com/facebook/react
Editor.mdMarkdown编辑器https://github.com/pandao/editor.md

技术名称官网
subscribegqzhttp://ganquanzhong.top
名称类型描述地址
Eureka源码服务发现https://github.com/Netflix/eureka
Feign源码声明式服务调用https://github.com/OpenFeign/feign
Hystrix源码服务熔断https://github.com/Netflix/Hystrix
spring-boot源码SpringBoothttps://github.com/spring-projects/spring-boot
hutool工具国产工具大全https://gitee.com/loolly/hutool
Mybatis-PageHelper工具Mybatis翻页插件https://github.com/pagehelper/Mybatis-PageHelper
mybatis-plus工具mybatis 增强工具包https://github.com/baomidou/mybatis-plus
guava工具谷歌工具包https://github.com/google/guava
weixin-popular工具微信SDK JAVA (公众平台、开放平台、 商户平台、 服务商平台)https://github.com/liyiorg/weixin-popular
spring-boot-examples面试/学习Spring Boot 技术栈示例代码,快速简单上手教程。https://github.com/ityouknow/spring-boot-examples
springboot-learning-example面试/学习spring boot 实践学习案例https://github.com/JeffLi1993/springboot-learning-example
TheAlgorithms/Java面试/学习数据结构与算法https://github.com/TheAlgorithms/Java
java-design-patterns面试/学习Java设计模式https://github.com/iluwatar/java-design-patterns
interviews面试/学习软件工程技术面试个人指南https://github.com/kdn251/interviews/blob/master/README-zh-cn.md
skill-map面试/学习程序员技能图谱https://github.com/TeamStuQ/skill-map
Interview-Notebook面试/学习面试知识https://github.com/CyC2018/Interview-Notebook
mapSource面试/学习Java思维导图https://gitee.com/java-mindmap/mapSource
java_wiki面试/学习Java学习资料https://gitee.com/log4j/java_wiki
Java-Interview面试/学习Java知识点https://github.com/crossoverJie/Java-Interview
simplemall框架基于SpringCloud的微服务架构实战案例项目https://github.com/backkoms/simplemall
paascloud-master框架spring cloud + vue 全家桶实战,模拟商城,完整的购物流程、后端运营平台,可以实现快速搭建企业级微服务项目https://github.com/paascloud/paascloud-master
SuperBoot框架基于SpringCloud、SpringBoot敏捷开发框架https://github.com/7040210/SuperBoot
xxl-job框架分布式任务调度平台https://github.com/xuxueli/xxl-job
jeecg框架基于代码生成器的J2EE快速开发平台https://github.com/zhangdaiscott/jeecg
jeesite框架Java EE(J2EE)快速开发框架https://github.com/thinkgem/jeesite
jeegem框架SpringMVC+Spring+Mybatis+Dubbo+Zookeeper+Redis+ActiveMQ Spring boot,Spring cloud,Dubbo,Elasticsearch,Redis,ActiveMQ,Nginx, Mycat,Spring,MongoDB,ZeroMQ,Git,Nosql,Jvm,Mecached,Netty,Nio,Mina,Nutch, Webservice,Activiti,Shiro,Tomcathttps://gitee.com/jeegem/jeegem
Cloud-Admin框架Cloud-Admin是国内首个基于Spring Cloud微服务化开发平台https://gitee.com/minull/ace-security
MCMS框架Java快速开发平台!基于Spring、SpringMVC、Mybatis架构https://gitee.com/mingSoft/MCMS
JFinal框架JFinal 是基于 Java 语言的极速 WEB + ORM 框架https://gitee.com/jfinal/jfinal
iBase4J框架基于SpringBoot 2.0https://gitee.com/iBase4J/iBase4J
zheng框架基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构https://gitee.com/shuzheng/zheng
spring-cloud-book框架使用Spring Cloud与Docker实战微服务https://gitee.com/itmuch/spring-cloud-book
gitignore工具gitignore大全https://github.com/github/gitignore
octotree插件github属性菜单https://github.com/buunguyen/octotree

https://github.com/search?q=stars%3A>10000&type=Code
https://github.com/trending/java?since=monthly


http://chatgpt.dhexx.cn/article/U0FvsDxA.shtml

相关文章

JAVA 中的代码生成包 CGLIB (Code Generation Library)

JAVA 中的代码生成包 CGLIB (Code Generation Library) CGLIB 是一个功能强大,高性能的代码生成包。它为没有实现接口的类提供代理,为 JDK 的动态代理提供了很好的补充。通常可以使用Java的动态代理创建代理,但当要代…

Java开发实战讲解!java开发CPU最低要求

前言 本人是底层 211 本科,刚毕业,⽆科研经历,但是有些项⽬经历。 在国内监控行业某头部企业做过一段时间的实习。 想着投下字节,可以积累⼀下⾯试经验和为金九银十面招做准备。投了简历之后,过了一段时 间,HR 就打电话跟我约时间, 说明一下,我投的是北京 office。…

Java面试题技术类一

前端技术导航大全 1、面向对象编程的三大特性是什么? 2、String 和StringBuffer的区别 3、说出ArrayList,Vector, LinkedList的存储性能和特性 4、Collection 和 Collections的区别 5、HashMap和Hashtable的区别 6、final, finally, finalize的区别 7、Overload和Overri…

Java专项练习(三)

JAVA选择题 401、下列类定义代码,当用来声明对象car,并用Car carnew Car();实例化后,可以通过car对象直接赋值的字段是()402、以下哪个不是Collection的子接口?403、下列说法正确的是( )404、下面的程序将来…

Java学习汇总

6/28日已更新,错误已修改~~~有错误的地方,欢迎大家留言! 目录 一、Java基础篇 1.接口和抽象类的区别 2.重载和重写的区别 3.和equals的区别 4.异常处理机制 5.HashMap原理 6.想要线程安全的HashMap怎么办? 7.ConcurrentHa…

java面经整理

面试问题 一、Java基础1.jdk1.7到jdk1.8HashMap发生了什么变化(底层)?2.jdk1.7到jdk1.8虚拟机发生了什么变化3.String、StringBuilder、StringBuffer4.ArrayList和LinkedList有什么区别?5.ConcurrentHashMap的扩容机制6.接口和抽象…

获得阿里Java开发P7岗“农村穷苦”小伙就得安于现状?

前言 相信大家看到这个标题其实就已经可以联想到我大概是个什么样的情况了,很多人都在生活中或者是网络上甚至是家庭中都大致听过这样的话,“你这样的出生,达到现在这样的生活已经很不错了,还是别为了不切实际的梦想去冒险了&…

Java基础 常见数据结构与算法 项目总结

Java基础 1 Java基础必知必会 1.1 Java语言有哪些特点? 面向对象(封装,继承,多态);平台无关性,平台无关性的具体表现在于,Java 是“一次编写,到处运行(Wri…

Java面试知识点概览(持续更新)

Java 基础 说说自定义注解的场景及实现 利用自定义注解,结合SpringAOP可以完成权限控制、日志记录、统一异常处理、数字签名、数据加解密等功能。 实现场景(API接口数据加解密) 1)自定义一个注解,在需要加解密的方法上添加该注…

java开发工程师面试总结

面试中常被问到的问题 介绍jvmjvm内存模型程序计数器虚拟机栈本地方法栈方法区堆 垃圾回收判断对象是否存活引用计数算法可达性分析算法 垃圾收集算法复制算法标记清除算法,标记整理算法 垃圾收集器新生代收集器SerialParNewParallel Scavenge 老年代收集器Serial O…

Java面试经验总结

目录 Java面试知识点基础常识前端基础知识Java基础知识1、**并行与并发**2、**线程与进程**3、**HashMap和HashTable区别**4、**new对象创建过程原理(在JVM),从执行的角度(其他角度待续)**4、**Volatile和Synchronized**5、**线程创建的几种方法**6、**垃…

java怎么写api接口,绝对干货

正文 下文中截图来源于朋友一个pdf版本的面经,把所以知识点的答案整理了下来,耗费他至少1个月时间,在本文最后部分把这个pdf分享给大家,觉得有用的麻烦点赞关注走一波,谢谢!!!面经中有他的知识点的答案,如下图示例,非常详细(文末有领取方式)!!! 1.数据结构与算…

Java开发校招面经

面试 当前面经欠缺:docker,k8s容器,spark,flink,hbase,hive,java网络编程(netty) 一,JAVA 重写和重载 重写:方法签名要完全相同(方…

数据结构:链表逆序输出

数据结构&#xff08;一&#xff09;&#xff1a;链表逆序输出 题目描述&#xff1a;创建一个链表&#xff0c;并将链表逆序输出&#xff0c;链表中以输入0作为结束 关键代码详解&#xff1a; 附&#xff1a;全部代码 #include<stdio.h> #include<stdlib.h> #…

链表逆序 java_链表逆序(JAVA实现)

题目:将一个有链表头的单向单链表逆序 分析: 链表为空或只有一个元素直接返回; 设置两个前后相邻的指针p,q,使得p指向的节点为q指向的节点的后继; 重复步骤2,直到q为空; 调整链表头和链表尾; 图解: 以链表A->B->C->D为例,逆序此链表。 0.初始状态 …

2-6 链表逆序及其C++实现

更多系列博文请点击&#xff1a;0-数据结构与算法链接目录 2-6 链表逆序 我只介绍两种常用方法吧&#xff0c;非递归方法 和 递归 方法 我觉得够用就行 1、非递归方法&#xff1a; 将第二个元素后面的元素依次插入到头结点后面&#xff0c; 最后再把原始第一个元素放到原…

c语言 数据结构 双向循环链表逆序

双链循环链表排序&#xff1a; 原链表&#xff1a; 1 2 3 4 5 6 7 8 9 10 逆序后&#xff1a;10 9 8 7 6 5 4 3 2 1 思路&#xff1a; 把最后一个节点删除&#xff0c; 插到head下面去 数据 1 不用管&#xff0c; 把后面的数据往 1 前面怼&#xff0c; 1自然就是最后一个了…

C语言实现链表的逆序的几种方式

文章目录 通过头插法实现的通过双指针实现链表的逆序通过栈来实现的通过递归来实现 通过头插法实现的 1、通过头插法&#xff08;两条链表&#xff09;来实现的。通过遍历原来的链表&#xff0c;将遍历得到的每一个节点都插入到新链表的头结点&#xff0c;然后遍历新链表&…

C语言单向链表的逆序输出

最近在学习链表&#xff0c;看到书上说可以采取每次在链表头部插入新增节点的方法&#xff0c;将链表逆序&#xff0c;也就是建立的链表节点内容与数据的输入顺序相反。我便来了兴趣&#xff0c;想着试试看&#xff0c;结果没搞懂&#xff0c;于是开始百度。看了几遍博客后终于…

样本方差与总体方差的区别

为什么80%的码农都做不了架构师&#xff1f;>>> 之前一直对于样本方差与总体方差的概念区分不清&#xff0c;对于前者不仅多了“样本”两个字&#xff0c;而且公式中除数是N-1&#xff0c;而不是N。现在写下这么写东西&#xff0c;以能彻底把他们的区别搞清楚。 总…