题目(反转链表) 给定一个单链表的头节点 head,请将链表反转,并返回反转后的链表的头节点。 例如,给定链表 1 -> 2 -> 3 -> 4 -> 5,反转后的链表应为 5 -> 4 -> 3 -> 2 -> 1。 请编写一个函数 reverseList,实现上述功能。 函数签名如下: public ListNode reverseList(ListNode head) { // TODO: 实现函数体 } 其中,ListNode 是一个单链表节点的定义: pub…
题目(反转链表) 给定一个单链表的头节点 head,请将链表反转,并返回反转后的链表的头节点。 例如,给定链表 1 -> 2 -> 3 -> 4 -> 5,反转后的链表应为 5 -> 4 -> 3 -> 2 -> 1。 请编写一个函数 reverseList,实现上述功能。 函数签名如下: public ListNode reverseList(ListNode head) { // TODO: 实现函数体 } 其中,ListNode 是一个单链表节点的定义: pub…
Git刚启动的配置 配置账号和邮箱 git config --global user.name "zoupeng" git config --global user.email "872571679@qq.com" 帮助文档的命令无需联网 git help config 设置版本库 两种方式 网络拷贝 和本地创建 git init 把某个项目添加进去 git add app 把全部添加进去 git add . 查看是否被管理 git status 提交文件 git commi…
安装: yum install firewalld 1、firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 禁用,禁止开机启动: systemctl disable firewalld 停止运行: systemctl stop firewalld 2.配置firewalld-cmd 查看版本: firewall-cmd --version 查看帮助: firewall-cmd --help 显示状态: firew…
安装tab提示 新开通的阿里云服务器是默认最小安装 使用没有需要自己手动安装 yum install -y bash-completion 安装docker 1、移除以前docker相关包 sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine 2、配置yum源 s…
user www www; #程序运行用户和组 worker_processes auto; #启动进程,指定nginx启动的工作进程数量,建议按照cpu数目来指定,一般等于cpu核心数目 error_log /home/wwwlogs/nginx_error.log crit; #全局错误日志 pid /usr/local/nginx/logs/nginx.pid; #主进程PID保存文件 worker_rlimit_nofile 51200; #文件描述符数量 events { use epoll; #使用ep…
中介者设计模式 中介者设计模式是一种行为型设计模式,它通过一个中介者对象来封装一系列对象之间的交互关系,从而降低对象之间的耦合度。中介者对象充当了所有对象之间的协调者,它负责处理对象之间的通信和控制对象之间的行为。 优点: 降低耦合度:中介者对象将对象之间的交互关系封装起来,从而减少了对象之间的直接依赖关系,降低了耦合度,使得对象之间更加灵活和可扩展。 集中控制逻辑:中介者对象集中了对象之间的通信和行为控制逻辑,使得系统更加清晰和易于维护。 代码复用:中介者对象可以被多个对象共享和重用,从而减少了代码的冗余和重复。…
观察者设计模式 观察者设计模式(Observer Design Pattern)是一种行为型设计模式,它定义了对象之间的一种一对多的依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会收到通知并自动更新。 观察者模式包含两个主要角色:Subject(主题)和 Observer(观察者)。Subject 是一个被观察的对象,它维护了一个观察者列表,当它的状态发生改变时,会通知所有观察者。Observer 是观察者对象,它注册到 Subject 中,以便在主题的状态改变时接收通知。 优点: 易于扩展:通过添…
模板方法设计模式介绍 模板方法设计模式是一种行为型设计模式,它定义了一个算法的骨架,将算法中一些步骤的具体实现延迟到子类中。模板方法模式使得子类可以在不改变算法骨架的情况下重新定义算法中某些步骤的具体实现。 模板方法模式通常包含以下角色: 抽象类(Abstract Class):定义了一个模板方法,该方法中包含了算法的骨架和一些抽象方法,用于延迟到子类中实现。 具体类(Concrete Class):实现了抽象类中的抽象方法,并提供算法的具体实现。 下面是一个简单的模板方法模式的示例: // 抽象类 public …
原则分类和说明 在软件设计中,设计模式是一种被广泛应用的概念,它可以帮助开发者解决常见的设计问题,提高代码的可维护性和可扩展性。为了保证设计模式的有效性和可用性,需要遵守以下八大准则: 1. 单一职责原则(Single Responsibility Principle,SRP):一个类或者方法只应该有一个单一的职责,不要将多个职责耦合在一起。 2. 开闭原则(Open-Closed Principle,OCP):软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。即当需要改变一个软件系统的功能或者添加新的功能时…
命令设计模式介绍 命令模式(Command Pattern)是一种行为型设计模式,它将请求封装成一个对象,从而可以将不同的请求与参数、队列或日志记录一起参数化。这种模式的核心思想是将命令的发起者和执行者解耦,从而使得系统更加灵活。下面我们将通过一个Java代码示例来进一步说明。 示例场景: 假设我们正在开发一个简单的遥控器应用程序,该应用程序可以控制各种电器设备。我们需要实现一个遥控器类(RemoteControl),该类可以控制多个电器设备,例如灯(Light)和电视(TV)。遥控器需要有多个按钮,每个按钮对应一…