计算机基础知识59

news2024/11/24 14:03:01

MySQL的卸载流程

1、先停止MySQL服务:右键“此电脑”,选择“管理”,之后选择“服务和应用程序”--“服务”,在服务中找到“MySQL”,右键选择“停止”。

2、找到“控制面板”--“程序和功能”,找到MySQL,右键单击选择“卸载”。

3、在C盘找到program files(X86)以及programdata两个文件夹,再分别在这两个文件夹下找到MySQL相关的文件夹,把MySQL相关的文件夹全部删掉。(默认的MySQL是存储在这两个文件夹下的,此处要根据你安装时定义的安装目录进行查找,也可以全盘搜索MySQL进行相关删除)。

4、使用win+R快捷键在运行框里输入“regedit”,进入注册表,根据下面这三条路径删除MySQL相关的文件(夹)。

HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Application/MySQL

HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Application/MySQL

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application/MySQL

5、C:/WINDOWS 下的my.ini文件也删除!

至此,就已经卸载完成了。如果还不放心,就继续全盘搜索MySQL相关文件,全部删除即可。(注意安装时间和日期,别删错了)

Windows安装MySQL

1、下载安装包:        

        # 地址:https://downloads.mysql.com/archives/community/

2、解压并创建配置文件,创建数据目录:

        #   将下载的压缩包解压 
        #   在bin目录同级下创建一个文件,命名为my.ini
        #   在bin目录同级下创建一个文件夹,命名为data

3、编辑配置文件my.ini:

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录 ---这里输入你安装的文件路径----
basedir=D:\MYSQL 5.7\mysql-5.7.15-winx64\mysql-5.7.15-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\MYSQL 5.7\mysql-5.7.15-winx64\mysql-5.7.15-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

4、安装Mysql,配置服务:

# 来到mysql解压后的bin路径下(以管理员身份运行)​
# 安装mysql  安装完成后Mysql会有一个随机密码(记住这个密码)
mysqld --initialize --console​
# 把mysql创建成系统服务 
mysqld --install mysql​
# 启动mysql服务
net start mysql

如果使用上述方式无法创建服务可以使用如下方式:

# 创建系统服务
sc create mysql binpath= "D:\mysql-8.0.28-winx64\mysql-8.0.28-winx64\bin\mysqld --defaults-file=D:\mysql-8.0.28-winx64\mysql-8.0.28-winx64\\my.ini" start= auto displayname= "mysql8"   
# sc create mysql binpath= "D:\mysql-8.0.28-winx64\mysql-8.0.28-winx64\bin\mysqld"
# 删除系统服务
sc delete mysql

5、登录修改密码:

# 登录(服务启动才能登录)
mysql -uroot -p
# 输入刚刚上面生成的随机密码​
# 修改密码(8.0以后)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'JIAJIA';​
# 修改密码(5.7)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'JIAJIA' WITH GRANT OPTION;
FLUSH PRIVILEGES;

6、忘记root密码修改方式:

## 1 以系统管理员身份运行cmd.​
## 2 查看mysql是否已经启动,如果已经启动,就停止:net stop mysql.​
##  3 切换到MySQL安装路径下:D:\mysql-8.0.28-winx64\mysql-8.0.28-winx64\bin;如果已经配了环境变量,可以不用切换了。​
## 4 在命令行输入:mysqld -nt --skip-grant-tables​
## 5 以管理员身份重新启动一个cmd命令窗口,输入:mysql -uroot -p,Enter进入数据库。​
## 6 如果不想改密码,只是想看原来的密码的话,可以在命令行执行这个语句
select host,user,password from mysql.user; # 即可查看到用户和密码​
## 7 如果要修改密码的话,在命令行下 依次 执行下面的语句
use mysql
update user set password=password("new_pass") where user="root"; # 'new_pass' 这里改为你要设置的密码
flush privileges;
quit
​## 8 重新启动MYSQL,输入密码登录即可!
​## 9 mysql -u root -p 输入密码试试吧

远程连接别人数据库

数据库:MySQL

工具: Navicat,

# 确保两部电脑都是在同一个局域网,也就是连着同一个路由器,或者同一个WiFi

# 如果不确定是否为同一个局域网,可以打开cmd,输入ipconfig, 各自查看两部电脑的IPv4地址,如果前面三个字段都是一样的,比如电脑A为192.168.32.55,电脑B为192.168.32.57,那说明是同一个局域网

# 关闭防火墙:

        我的电脑-属性-控制面板-系统和安全-Windows Defender防火墙

# 在电脑上设置他人可连接:

  1、电脑B打开cmd,输入mysql -u root -p,回车,输入mysql的密码,回车

2、然后依次输入:

use mysql; 回车      # 进入名为mysql的数据库
grant all privileges on * . * to 'root'@'192.168.32.55' identified by '1234' with grant

# 意思是,在电脑B的数据库上创建一个用户名为root的账户,密码为1234,192.168.32.55就是电脑A的IP,允许它连接电脑B的数据库。

option; 回车
flush privileges; 回车    # 刷新一下权限

3、连接人打开Navicat

点击“连接”,选择MySQL,连接名就输入“远程连接”吧,主机或IP输入192.168.32.57,这是电脑B的IP,端口默认3306不用管,用户名和密码就是上面的root、1234。然后点击“连接测试”,成功!

点击“确定”,左边就会多一个“远程连接”的数据连接名称,说明我们已经连接上了!

django可以他人访问

setting.py中设置:ALLOWED_HOSTS = ['*']

 他人便可以通过输入IP+7890访问

Web应用

cs/bs 架构

# c/s  客户端--服务端       

    mysql  c和s装在同一台机器上
    c链接s: cmd窗口中   mysql -h 127.0.0.1 -P 3306 -uroot -p密码
    网络协议:一般情况,都是软件自定制协议--->基本都是基于TCP
# b/s 浏览器--服务端     

    bs本质就是cs
    咱们写的django,运行后---->s 服务端
    客户端链接---->浏览器 
    网络协议:所有全是  http协议--->基于TCP, 如果不是http协议,浏览器识别不了

# b/s好处:软件更新了,只需要后端更新,前端是浏览器,不需要变,直接访问,就是最新的
# 基于SOCKET写一个web应用
        我们学习bs架构软件开发---我们开发 s端
        使用socket 写一个 s端---浏览器就可以访问了

import socket
def server_run():
    soc = socket.socket()
    soc.bind(('127.0.0.1', 8008))
    soc.listen(5)
    while True:
        conn, addr = soc.accept()
        recv_data = conn.recv(1024)
        print(recv_data)
        # 1 直接在send里写,发送给客户端  http响应的格式
        # conn.send(b'HTTP/1.1 200 OK\r\n\r\n<h1>hello web</h1><img src="https://img2.woyaogexing.com/2022/12/24/a22973058eab2aafa11248a8b6031f5e.jpg"></img>')
        #2 打开一个html文件,发送给客户端
        # with open('index.html','r',encoding='utf-8') as f:
        #     data=f.read()
        # conn.send(('HTTP/1.1 200 OK\r\n\r\n%s'%data).encode('utf-8'))
        # 3 动态网页,字符串替换
        import time
        now=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
        print(now)
        with open('index.html','r',encoding='utf-8') as f:
            data=f.read()
        data=data.replace('@@',now)
        conn.send(('HTTP/1.1 200 OK\r\n\r\n%s'%data).encode('utf-8'))
        conn.close()

if __name__ == '__main__':
    server_run()

http协议

# 定义:HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)

# 作用:服务器与本地浏览器之间传输超文本的传送协议

# 特点:1、基于TCP协议之上的,【应用层】协议----》它是可靠传输
              2、基于请求-响应模式,必须客户端主动发起--》服务端才有响应
              3、无状态保存  ,发送多次请求,对于服务端来讲,都是新的
                         cookie,session做会话保持
             4、无连接,客户端不会一直跟服务端链接        

# http请求协议:

        -请求协议
        -请求首行---》请求方式--》请求地址--》请求协议版本号 1.1  \r\n
        -请求头:key-value形式 \r\n   \r\n\r\n
        -请求体:get请求一般没有请求体,post请求有请求体

# 请求头
Host: 127.0.0.1:8008\r\n
Connection: keep-alive\r\n
sec-ch-ua: "Google Chrome";v="119", "Chromium";v="119", "Not?A_Brand";v="24"\r\nsec-ch-ua-mobile: ?0\r\nsec-ch-ua-platform: "Windows"\r\nUpgrade-Insecure-Requests: 1\r\n
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36\r\n
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7\r\n
Sec-Fetch-Site: none\r\nSec-Fetch-Mode: navigate\r\n
Sec-Fetch-User: ?1\r\n
Sec-Fetch-Dest: document\r\n
Accept-Encoding: gzip, deflate, br\r\nAccept-Language: zh-CN,zh;q=0.9\r\n
Cookie: csrftoken=0Eq1YnctKcjVroVgrU0MtwZ7hTMsEAkUUqf9nSyKBJsOtowSZbO4Cb99eCk4y0LH\r\n\r\n
# 请求体

# http响应协议:

         -响应协议 
        -响应首行:HTTP/1.1 200 OK\r\n   --协议版本---响应状态码--》响应描述符
        -响应头:响应头有什么
        -响应体:一般给个html标签
            浏览器中看到的页面,都是响应体的内容

# OSI七层协议:

       应用层、表示层、会话层、传输层、网络层、数据链路层和物理层

http的版本区别

搜http 有哪些主要版本,版本区别是什么?    0.9、1.1、2.0、 3.0

0.9 

        最初版本的HTTP协议,只支持GET方法,并且没有请求头和响应头的概念,只能传输纯文本。于1991年发布,由Tim Berners-Lee创建,被认为是HTTP的起源。该版本只支持GET请求,并且响应只能是HTML文本。

1.0

        在HTTP/0.9的基础上增加了请求头和响应头的概念,并支持多种HTTP方法,包括GET、POST、PUT、DELETE等。于1996年发布,该版本的周期大约是6年,在2000年左右被广泛使用。

1.1

        在HTTP/1.0的基础上进行了扩展和优化,包括持久连接、管线化、分块传输编码等特性,可以更高效地传输数据。于1999年发布,该版本的周期大约是15年,在2014年左右仍然是主流。

2.0

        在HTTP/1.1的基础上进行了进一步的优化,包括二进制协议、多路复用、服务器推送等特性,能够更快地传输数据。HTTP/2于2015年发布,采用二进制协议,引入了多路复用、服务器推送等特性,进一步提高了性能。该版本的周期约为6年。

3.0

        是HTTP协议的最新版本,基于QUIC协议进行了重构,具有更快的传输速度、更低的延迟和更好的安全性。HTTP/3于2020年发布,采用基于UDP的QUIC协议,该版本目前正在逐渐被广泛采用。

常用请求头和响应头

HTTP Request Header 请求头
HTTP Responses Header 响应头

-Cookie

        Cookie具体指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务器提取有用信息。有的接口需要登录之后才会生成Cookie信息,必须要保持登录的状态

-contentype

        它的作用是:请求的报文格式

常用响应状态码

1××:消息响应
2××:成功响应
3××:重定响应
4××:客户端错误
5××:服务器端错误
500 内部服务器错误
Internal Server Error 500内部服务器错误,服务器遇到未知无法解决的问题。
404 请求错误
Not Found 404 错误请求,因发送的请求语法错误,服务器无法正常读取。
403 禁止访问
Forbidden 403 禁止访问,客户端没有权利访问所请求内容,服务器拒绝本次请求。
400 错误请求
Bad Request 400 错误请求,因发送的请求语法错误,服务器无法正常读取。
401 未经授权
Unauthorized 401 未经授权,需要身份验证后才能获取所请求的内容,类似于403错误.不同点是.401错误后,只要正确输入帐号密码,验证即可通过。
200 请求成功
200 OK 请求成功,表示已经请求成功,默认情况下的状态码为200的响应就可以被缓存了。
502 无效网关
Bad Gateway 502 网关错误,服务器作为网关且从上游服务器获取到了一个无效的HTTP响应。

HTTP Request Header 请求头

Accept:指定客户端能够接收的内容类型。
Accept-Charset:浏览器可以接受的字符编码集。
Accept-Encoding:指定浏览器可以支持的web服务器返回内容压缩编码类型。
Accept-Language:浏览器可接受的语言。
Accept-Ranges:可以请求网页实体的一个或者多个子范围字段。
AuthorizationHTTP:授权的授权证书。

Cache-Control:指定请求和响应遵循的缓存机制。
Connection:表示是否需要持久连接。(HTTP 1.1默认进行持久连接)
CookieHTTP:请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器。
Content-Length:请求的内容长度。
Content-Type:请求的与实体对应的MIME信息。

Date:请求发送的日期和时间。
Expect:请求的特定的服务器行为。
From:发出请求的用户的Email。
Host:指定请求的服务器的域名和端口号。

If-Match:只有请求内容与实体相匹配才有效。
If-Modified-Since:如果请求的部分在指定时间之后被修改则请求成功,未被修改则返回304代码。
If-None-Match:如果内容未改变返回304代码,参数为服务器先前发送的Etag,与服务器回应的Etag比较判断是否改变。
If-Range:如果实体未改变,服务器发送客户端丢失的部分,否则发送整个实体。
If-Unmodified-Since:只在实体在指定时间之后未被修改才请求成功。

Max-Forwards:限制信息通过代理和网关传送的时间。
Pragma:用来包含实现特定的指令。
Proxy-Authorization:连接到代理的授权证书。
Range:只请求实体的一部分,指定范围。
Referer:先前网页的地址,当前请求网页紧随其后,即来路。
TE:客户端愿意接受的传输编码,并通知服务器接受接受尾加头信息。

Upgrade:向服务器指定某种传输协议以便服务器进行转换(如果支持。
User-AgentUser-Agent:的内容包含发出请求的用户信息。

Via:通知中间网关或代理服务器地址,通信协议。
Warning:关于消息实体的警告信息

HTTP Responses Header 响应头

Accept-Ranges:表明服务器是否支持指定范围请求及哪种类型的分段请求。
Age:从原始服务器到代理缓存形成的估算时间(以秒计,非负)。
Allow:对某网络资源的有效的请求行为,不允许则返回405。

Cache-Control:告诉所有的缓存机制是否可以缓存及哪种类型。
Content-Encodingweb:服务器支持的返回内容压缩编码类型。。
Content-Language:响应体的语言。
Content-Length:响应体的长度。
Content-Location:请求资源可替代的备用的另一地址。
Content-MD5:返回资源的MD5校验值。
Content-Range:在整个返回体中本部分的字节位置。
Content-Type:返回内容的MIME类型。

Date:原始服务器消息发出的时间。
ETag:请求变量的实体标签的当前值。
Expires:响应过期的日期和时间。

Last-Modified:请求资源的最后修改时间。
Location:用来重定向接收方到非请求URL的位置来完成请求或标识新的资源。

Pragma:包括实现特定的指令,它可应用到响应链上的任何接收方。
Proxy-Authenticate:它指出认证方案和可应用到代理的该URL上的参数。

refresh:应用于重定向或一个新的资源被创造,在5秒之后重定向(由网景提出,被大部分浏览器支持)
Retry-After:如果实体暂时不可取,通知客户端在指定时间之后再次尝试。

Serverweb:服务器软件名称。
Set-Cookie:设置Http Cookie。

Trailer:指出头域在分块传输编码的尾部存在。
Transfer-Encoding:文件传输编码。

Vary:告诉下游代理是使用缓存响应还是从原始服务器请求。
Via:告知代理客户端响应是通过哪里发送的。

Warning:警告实体可能存在的问题。
WWW-Authenticate:表明客户端请求实体应该使用的授权方案。

今日思维导图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1260587.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[python]离线加载fetch_20newsgroups数据集

首先手动下载这个数据包 http://qwone.com/~jason/20Newsgroups/20news-bydate.tar.gz 下载这个文件后和脚本放一起就行&#xff0c;然后 打开twenty_newsgroups.py文件&#xff08;在fetch_20newsgroups函数名上&#xff0c;右键转到定义即可找到&#xff09; 之后运行代码即…

SpringBoot监控Redis事件通知

Redis的事件通知 Redis事件通过 Redis 的订阅与发布功能&#xff08;pub/sub&#xff09;来进行分发&#xff0c; 因此所有支持订阅与发布功能的客户端都可以在无须做任何修改的情况下&#xff0c; 使用键空间通知功能。 因为 Redis 目前的订阅与发布功能采取的是发送即忘&am…

MySQL进阶-锁

✨作者&#xff1a;猫十二懿 ❤️‍&#x1f525;账号&#xff1a;CSDN 、掘金 、语雀 、Github &#x1f389;公众号&#xff1a;猫十二懿 一、MySQL 锁 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中&#xff0c;除传统的计算资源&#xff08;CPU、RAM、…

Excel如何比较两列数据的不同

当遇到exel有两个列表的数据&#xff0c;需要比较得到他们的不同的部分&#xff0c;并且得到一个不同的值的列表。示例如下&#xff1a; 目的是&#xff1a;通过比较&#xff0c;知道Column2的哪些值不在在Column1里。 WPS直接提供了这一个功能&#xff0c;如下图&#xff1a;…

基于Python获取亚马逊的评论信息的处理

文章目录 一、分析亚马逊的评论请求二、获取亚马逊评论的内容三、亚马逊评论信息的处理四、代码整合4.1 代理设置4.2 while循环翻页 总结关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具…

理解Android无埋点技术

首先什么是无埋点呢&#xff0c;其实所谓无埋点就是开发者无需再对追踪点进行埋码&#xff0c;而是脱离代码&#xff0c;只需面对应用界面圈圈点点即可追加随时生效的事件数据点。 无埋点的好处 其实无埋点并不是完全不用写代码&#xff0c;而是尽可能的少写代码。开发者将SDK集…

策略算法与Actor-Critic网络

策略算法 教程链接 DataWhale强化学习课程JoyRL https://johnjim0816.com/joyrl-book/#/ch7/main 策略梯度 与前面的基于价值的算法不同&#xff0c;这类算法直接对策略本身进行近似优化。 在这种情况下&#xff0c;我们可以将策略描述成一个带有参数 θ θ θ的连续函数…

案例032:基于微信小程序的电子商城购物平台的设计与开发

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

软件测试回归测试流程

回归测试作为软件生命周期的一个组成部分&#xff0c;在整个软件测试过程中占有很大的工作量比重&#xff0c;软件开发的各个阶段都会进行多次回归测试。在渐进和快速迭代开发中&#xff0c;新版本的连续发布使回归测试进行的更加频繁&#xff0c;而在极端编程方法中&#xff0…

堆的应用:堆排序

文章目录 前言堆排序的实现&#xff08;升序为例&#xff09;代码 前言 堆排序&#xff0c;顾名思义是一个利用堆来完成排序的一个操作。在之前&#xff0c;小编在[C语言学习系列–&#xff1e;【关于qsort函数的详解以及它的模拟实现】] 谈到冒泡排序&#xff0c;但是冒泡排序…

CAM-Classification activation map 类激活图玩耍指南

原始论文 Learning Deep Features for Discriminative Localization 衍生论文 代码实现 torch-cam 该项目把代码打包成为了一个库&#xff0c;我们可以直接调用&#xff1b; torchcam.methods 这是上面那个项目的文档说明&#xff1b;

FreeRTOS任务创建及细节

目录 任务创建 简化的TCB结构体 创建任务堆栈和任务TCB 初始化任务TCB的成员 初始化任务堆栈 把新任务添加到就绪列表 任务创建 BaseType_t xTaskCreate( TaskFunction_t pxTaskCode,const char * const pcName, /*lint !e971 Unqualified char types are allowed for …

Harmony入门-HelloWorld

HarmonyOS 已经出来一些时间了。也有了OpenHarmony&#xff0c;作为HarmonyOS抽离的基础架构OpenHarmony&#xff0c;贡献给开源了&#xff0c;后续独立出来&#xff0c;那可真是就要独立生态啦&#xff0c;咱们顺水行舟&#xff0c;学习学习。 1.IDE 安装 https://hmxt.org/d…

Aapche Dubbo 不安全的 Java 反序列化 (CVE-2019-17564)

漏洞描述 Apache Dubbo 是一个高性能的、基于 Java 的开源 RPC 框架。 Apache Dubbo 支持不同的协议&#xff0c;它的 HTTP 协议处理程序是 Spring Framework 的 .org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter Spring Framework 的安全警告显示&am…

VS2022 配置Qt编译环境 | winows安装Qt5.14.2 | VS2017和Qt5配置成功指南

Visual Studio 2022安装教程完文本内容较多,请耐心看完,挺有收获的,要自己多尝试哦。 文章目录 # 插件安装 如果你想用VS2022来创建QT项目,那么你首先要学会下面的操作,创建一个空白解决方案,在扩展搜索qt,并且下载两个插件(带有绿√的就是)。这里其实是一个坑:VS20…

福利来了| 200多款精选简历模板免费领,让你30秒内征服HR!

找工作是不是让你很头大&#xff1f;尤其是写简历&#xff0c;真的好痛苦啊&#xff01;我在网上找了好久&#xff0c;都没有找到合适的简历模板&#xff0c;自己做又不知道从哪里下手。 不过现在好了&#xff0c;有一个超级福利送给大家&#xff01;200多款精选简历模板免费领…

231127 刷题日报

这周值班。。多少写道题吧&#xff0c;保持每天的手感。老婆给买了lubuladong纸质书&#xff0c;加油卷。 1. 131. 分割回文串 写个这个吧&#xff0c;钉在耻辱柱上的题。 为啥没写出来&#xff1a; 1. 递归树没画对 把树枝只看做是1个字母&#xff0c;而且不清楚树枝和节点…

键盘打字盲打练习系列之刻意练习——1

一.欢迎来到我的酒馆 盲打&#xff0c;刻意练习! 目录 一.欢迎来到我的酒馆二.选择一款工具三.刻意练习 二.选择一款工具 俗话说&#xff1a;工欲善其事必先利其器。在开始之前&#xff0c;我们可以选择一款练习盲打的工具。打字软件有很多&#xff0c;还有专门练习打字的网站&…

leetCode 77.组合 + 回溯算法 (bactracking) + 剪枝 + 图解 + 笔记

77. 组合 - 力扣&#xff08;LeetCode&#xff09; 给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。可以按 任何顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [[2,4],[3,4],[2,3],[1,2],[1,3],[1,4], ] …

Java小游戏飞翔的小鸟

游戏界面 运行界面 开发准备 1、eclipse开发工具 二、创建游戏窗口 Mains类作为主类&#xff0c;在mian方法下定义一个m1()方法&#xff0c;设置窗口。 //定义一个初始化的游戏窗口方法 public static void m1() {//获取底层窗口界面的工具类JFrame jf new JFrame();//创建…