当前位置: 首页 > news >正文

ctfshow pwn wp

文章目录

    • Test_your_nc
      • pwn-0
      • pwn1
      • pwn2
      • pwn3
      • pwn4
    • 前置基础
      • pwn5
      • pwn6
      • pwn7
      • pwn8
      • pwn9
      • pwn10
      • pwn11
      • pwn12
      • pwn13:gcc编译执行C语言代码
      • pwn14:gcc编译执行C语言代码
      • pwn15:nasm编译asm,ld链接为可执行文件
      • pwn16:gcc编译汇编文件.s为可执行文件
      • pwn17:结合ida查看分析源码
      • pwn18:ida查看分析代码,echo>>追加,echo>覆盖
      • pwn19

Test_your_nc

pwn-0

用户名为 ctfshow 密码 为 123456 请使用 ssh软件连接
ssh ctfshow@题目地址 -p题目端口号

按照提示,ssh ctfshow@pwn.challenge.ctf.show -p28213连接,然后寻找flag(具体寻找步骤见下图)
在这里插入图片描述

pwn1

在这里插入图片描述

pwn2

在这里插入图片描述

pwn3

在这里插入图片描述
ctfshow{4b5a0c73-06ad-4bac-bbe6-5bc93629eeb7}

pwn4

在这里插入图片描述
在这里插入图片描述
ctfshow{7ef1a2b5-8e16-4986-9e32-d8e7fced7ec6}

前置基础

pwn5

补充:查询发现asm为汇编语言文件,另外一个文件可能为可执行文件,将它们复制到ctfshow pwn专用虚拟机上。

执行文件发现无权限执行,添加执行权限后,重新执行看看,得到结果。
在这里插入图片描述
ctfshow{Welcome_to_CTFshow_PWN}

pwn6

题目:立即寻址方式结束后eax寄存器的值为?

根据要求查看立即寻址方式,eax=11+114504-1=114514
在这里插入图片描述

pwn7

寄存器寻址方式结束后edx寄存器的值为?

根据题目要求,直接查看寄存器寻址方式的内容,可以得到edx的值为0x36d,根据之前某题大写提示,改成0x36D,即:ctfshow{0x36D}
在这里插入图片描述

pwn8

直接寻址方式结束后ecx寄存器的值为?

在这里插入图片描述

有效内容仅有以下内容,将msg地址赋值给ecx,msg地址并没有显示。

section .datamsg db "Welcome_to_CTFshow_PWN", 0
; 直接寻址方式mov ecx, msg      ; 将msg的地址赋值给ecx

使用ida工具打开可执行的文件
在这里插入图片描述
双击dword_80490E8查看地址(如下图所示),地址为:080490E8。
另外,二进制代码的地址都是以16进制存储的,所以需要写成0x80490E8,flag为:ctfshow{0x80490E8}
在这里插入图片描述

pwn9

寄存器间接寻址方式结束后eax寄存器的值为?
在这里插入图片描述
mov esi,msg:将msg的地址赋给esi,此时esi寄存器中的值为080490E8;
mov eax,[esi]:将esi中的值作为地址(080490E8地址单元中的值,eax只能读取4个字节的内容,读取一个字符Ascii码即1个字节),然后将该地址单元的值赋给eax,我们在ida可以查看080490E8地址单元的值(Welc倒序的ascii码)。

dword:32位,4字节

在这里插入图片描述
ctfshow{0x636C6557}

pwn10

寄存器相对寻址方式结束后eax寄存器的值为?
在这里插入图片描述

mov ecx,msg:将msg的地址赋给ecx,此时ecx寄存器中的值为080490E8add ecx,4:将ecx寄存器中的值加4,即ecx = ecx+4,8+4=12(10为A,11为B,12为C),因此,ecx寄存器中的值为080490ECflag为:ctfshow{0x80490EC}

pwn11

基址变址寻址方式结束后的eax寄存器的值为?
在这里插入图片描述

mov ecx,msg:将msg的地址赋给ecx,此时ecx寄存器中的值为080490E8
mov edx,2:edx为2
mov eax,[ecx + edx*2]:edx*2=4,ecx+4=080490EC,eax的值为“将080490EC地址的值作为地址”,即eax为:ome_to_CTFshow_PWN,flag为:ctfshow{ome_to_CTFshow_PWN}

pwn12

相对基址变址寻址方式结束后eax寄存器的值为?

在这里插入图片描述

mov ecx,msg:将msg的地址赋给ecx,此时ecx寄存器中的值为080490E8mov edx,1:edx为1add ecx,8:ecx=ecx+8,即:080490F0(8+8=16,进1位)mov eax,[ecx+edx*2-6]1) edx*2=1*2=2
2) ecx+edx*2=080490F2
3) ecx+edx*2-6=080490EC
4) eax为080490EC所在单元的值,即 ome_to_CTFshow_PWNflag为:ctfshow{ome_to_CTFshow_PWN}

pwn13:gcc编译执行C语言代码

题目:如何使用GCC?编译运行后即可获得flag
附件:flag.c

# 使用 gcc 命令编译c代码, -o 参数用于指定输出文件名
gcc flag.c -o flag 

在这里插入图片描述

pwn14:gcc编译执行C语言代码

请你阅读以下源码,给定key为”CTFshow”,编译运行即可获得flag

查看源码,可以发现读取了一个文件名为key的文件,所以我们创建key文件,在文件中输入CTFshow,编译执行代码。
在这里插入图片描述
代码注释内容参考:https://myon6.blog.csdn.net/article/details/137833216

#include <stdio.h>
#include <stdlib.h>#define BUFFER_SIZE 1024int main() {FILE *fp; // 定义文件指针 fp,用于打开和读取文件unsigned char buffer[BUFFER_SIZE]; // 定义了一个缓冲区 buffer,用于存储从文件中读取的数据size_t n;fp = fopen("key", "rb"); // 以二进制只读模式打开名为 "key" 的文件if (fp == NULL) {perror("Nothing here!");return -1;}char output[BUFFER_SIZE * 9 + 12];  // 定义一个输出缓冲区 output,用于存储最终的输出字符串int offset = 0; // 定义一个偏移量 offset,用于在 output 缓冲区中定位下一个要写入的位置offset += sprintf(output + offset, "ctfshow{"); // 将字符串 "ctfshow{" 复制到 output 缓冲区中,并更新偏移量while ((n = fread(buffer, sizeof(unsigned char), BUFFER_SIZE, fp)) > 0) { // 使用 fread() 函数 循环从文件中读取数据到缓冲区 buffer,直到文件末尾或读取失败for (size_t i = 0; i < n; i++) { // 遍历缓冲区 buffer 中的每个字节for (int j = 7; j >= 0; j--) { // 从高位到低位,遍历字节中每个位offset += sprintf(output + offset, "%d", (buffer[i] >> j) & 1);  // 将每个位的值(0或1)转换为字符,并将其追加到 output 缓冲区}if (i != n - 1) { // 在每个字节的二进制表示之间插入下划线,使得每个字节的二进制表示更清晰offset += sprintf(output + offset, "_"); }}if (!feof(fp)) {offset += sprintf(output + offset, " "); //如果未达到文件末尾,则在每个字节的二进制表示后面添加一个空格}}offset += sprintf(output + offset, "}"); // 将字符串 "}" 复制到 output 缓冲区中,表示字符串的结束printf("%s\n", output); // 打印最终生成的二进制字符串fclose(fp); // 关闭文件return 0; // 主函数的返回语句,表示程序正常结束并返回0
}

在这里插入图片描述
ctfshow{01000011_01010100_01000110_01110011_01101000_01101111_01110111_00001010}

pwn15:nasm编译asm,ld链接为可执行文件

题目:编译汇编代码到可执行文件,即可拿到flag
附件:flag.asm

asm文件为汇编代码文件,需要使用 nasm 命令将汇编代码编译为目标文件

nasm -f elf64 flag.asm # 将flag.asm编译成.o文件
ld -s -o flag flag.o # 使用 ld 命令将目标文件链接为可执行文件

在这里插入图片描述
ctfshow{@ss3mb1y_1s_3@sy}

附加:一些关于汇编代码的内容

section .datastr1 db "CTFshow",0str2 db "_3@sy",0str3 db "@ss3mb1y",0str4 db "_1s",0str5 db "ctfshow{"str6 db "}"

section.data部分,每个字符串以db开始,以0结尾

pwn16:gcc编译汇编文件.s为可执行文件

题目:使用gcc将其编译为可执行文件
附件:flag.s

在这里插入图片描述
ctfshow{daniuniuda}

pwn17:结合ida查看分析源码

有些命令好像有点不一样?
不要一直等,可能那样永远也等不到flag

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ctfshow{7dadeacd-b840-4210-b49d-458f817b6170}

pwn18:ida查看分析代码,echo>>追加,echo>覆盖

仔细看看源码,或许有惊喜
假作真时真亦假,真作假时假亦真

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

int fake()
{return system("echo 'flag is here'>>/ctfshow_flag"); // 将"flag is here"这条字符串追加在ctfshow_flag的文件内容之后
}int real()
{return system("echo 'flag is here'>/ctfshow_flag");  // 将"flag is here"这条字符串覆盖到ctfshow_flag文件
}

输入9:
在这里插入图片描述
如果输入非9:
在这里插入图片描述
因此,flag为:ctfshow{9f75ec0f-f762-43d8-88ca-f06f346ee77a}

pwn19

关闭了输出流,一定是最安全的吗?

在这里插入图片描述
使用ida64打开:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

相关文章:

ctfshow pwn wp

文章目录 Test_your_ncpwn-0pwn1pwn2pwn3pwn4 前置基础pwn5pwn6pwn7pwn8pwn9pwn10pwn11pwn12pwn13&#xff1a;gcc编译执行C语言代码pwn14&#xff1a;gcc编译执行C语言代码pwn15&#xff1a;nasm编译asm&#xff0c;ld链接为可执行文件pwn16&#xff1a;gcc编译汇编文件.s为可…...

【数据结构实战篇】用C语言实现你的私有队列

&#x1f3dd;️专栏&#xff1a;【数据结构实战篇】 &#x1f305;主页&#xff1a;f狐o狸x 在前面的文章中我们用C语言实现了栈的数据结构&#xff0c;本期内容我们将实现队列的数据结构 一、队列的概念 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端…...

数据结构 (11)串的基本概念

一、串的定义 1.串是由一个或者多个字符组成的有限序列&#xff0c;一般记为&#xff1a;sa1a2…an&#xff08;n≥0&#xff09;。其中&#xff0c;s是串的名称&#xff0c;用单括号括起来的字符序列是串的值&#xff1b;ai&#xff08;1≤i≤n&#xff09;可以是字母、数字或…...

快速高效求素数|质数的方法—Java(模板)

判断素数|质数方法时间效率:线性筛法>埃氏筛法>试除法 在写算法题的时候&#xff0c;各种各样跟素数有关的题目非常常见&#xff0c;本文列出了三种常见的判断素数的方法 三种求素数方法的优缺点 一、试除法 试除法的基本思想是&#xff1a;判断一个数 x 是否为素数&…...

探秘嵌入式位运算:基础与高级技巧

目录 一、位运算基础知识 1.1. 位运算符 1.1.1. 与运算&#xff08;&&#xff09; 1.1.2. 或运算&#xff08;|&#xff09; 1.1.3. 异或运算&#xff08;^&#xff09; 1.1.4. 取反运算&#xff08;~&#xff09; 1.1.5. 双重按位取反运算符&#xff08;~~&#xf…...

iOS 17.4 Not Installed

0x00 系统警告 没有安装 17.4 的模拟器&#xff0c;任何操作都无法进行&#xff01; 点击 OK 去下载&#xff0c;完成之后&#xff0c;依旧是原样&#xff01; 0x01 解决办法 1、先去官网下载对应的模拟器&#xff1a; https://developer.apple.com/download/all/?q17.4 …...

RestTemplate 使用教程

RestTemplate 是 Spring 框架提供的一种用于执行HTTP请求的同步客户端。它简化了与HTTP服务器的交互&#xff0c;并支持RESTful Web服务。 1. 添加依赖 首先&#xff0c;确保你的项目中包含了Spring Web的支持。如果你使用的是Maven&#xff0c;在pom.xml文件中添加如下依赖&…...

windows下安装wsl的ubuntu,同时配置深度学习环境

写在前面&#xff0c;本次文章只是个人学习记录&#xff0c;不具备教程的作用。个别信息是网上的&#xff0c;我会标注&#xff0c;个人是gpt生成的 安装wsl 直接看这个就行&#xff1b;可以不用备份软件源。 https://blog.csdn.net/weixin_44301630/article/details/1223900…...

【贪心算法第五弹——300.最长递增子序列】

目录 1.题目解析 题目来源 测试用例 2.算法原理 3.实战代码 代码解析 注意本题还有一种动态规划的解决方法&#xff0c;贪心的方法就是从动态规划的方法总结而来&#xff0c;各位可以移步博主的另一篇博客先了解一下&#xff1a;动态规划-子序列问题——300.长递增子序列…...

【数据分析】基于GEE解析2000-2020年武汉市FVC时空变化特征

武汉市FVC时空变化特征解析 1. 写在前面2. 2000~2020年武汉市FVC时空变化特征解析2.1. 数据获取与预处理2.2. 辐射定标和大气校正2.3. 云层和云影去除2.4. FVC计算2.5. 时空分析2.6. 代码1. 写在前面 🌍✨在应对全球气候变化和环境监测的挑战中,植被盖度(Fraction Vegetati…...

springboot实战(19)(条件分页查询、PageHelper、MYBATIS动态SQL、mapper映射配置文件、自定义类封装分页查询数据集)

引言&#xff1a; 该类博客的学习是基于b站黑马视频springbootvue视频学习&#xff01;具体围绕项目——"大事件"进行实战学习。 目录 一、功能介绍&#xff08;需求&#xff09;。 1、文章列表功能基本介绍。 2、条件分页查询功能与注意。 3、前端页面效果。&#x…...

Mongo数据库 --- Mongo Pipeline

Mongo数据库 --- Mongo Pipeline 什么是Mongo PipelineMongo Pipeline常用的几个StageExplanation with example:MongoDB $matchMongoDB $projectMongoDB $groupMongoDB $unwindMongoDB $countMongoDB $addFields Some Query Examples在C#中使用Aggreagtion Pipeline**方法一: …...

Docker部署mysql:8.0.31+dbsyncer

Docker部署mysql8.0.31 创建本地mysql配置文件 mkdir -p /opt/mysql/log mkdir -p /opt/mysql/data mkdir -p /opt/mysql/conf cd /opt/mysql/conf touch my.config [mysql] #设置mysql客户端默认字符集 default-character-setUTF8MB4 [mysqld] #设置3306端口 port33…...

银河麒麟桌面系统——桌面鼠标变成x,窗口无关闭按钮的解决办法

银河麒麟桌面系统——桌面鼠标变成x&#xff0c;窗口无关闭按钮的解决办法 1、支持环境2、详细操作说明步骤1&#xff1a;用root账户登录电脑步骤2&#xff1a;导航到kylin-wm-chooser目录步骤3&#xff1a;编辑default.conf文件步骤4&#xff1a;重启电脑 3、结语 &#x1f49…...

【微服务】 Eureka和Ribbon

一、Eureka 服务调用出现的问题&#xff1a;在远程调用另一个服务时&#xff0c;我们采用的解决办法是发送一次http请求&#xff0c;每次环境的变更会产生新的地址&#xff0c;所以采用硬编码会出现很多麻烦&#xff0c;并且为了应对并发问题&#xff0c;采用分布式部署&#…...

C++设计模式(工厂模式)

一、介绍 1.动机 在软件系统中&#xff0c;经常面临着创建对象的工作&#xff0c;这些对象有可能是一系列相互依赖的对象&#xff1b;由于需求的变化&#xff0c;需要创建的对象的具体类型经常变化&#xff0c;同时也可能会有更多系列的对象需要被创建。 如何应对这种变化&a…...

nodejs第三方库sharp对图片的操作生成新图片、压缩、添加文字水印及图片水印等

Sharp是一个基于libvips的高性能Node.js图像处理库&#xff0c;它提供了广泛的功能&#xff0c;包括调整大小、裁剪、旋转、格式转换等。Sharp可以处理多种图像格式&#xff0c;并且能够高效地转换图像格式。 相关说明及用法看&#xff1a;https://sharp.nodejs.cn/ 安装&#…...

uniapp-vue2引用了vue-inset-loader插件编译小程序报错

报错信息 Error: Vue packages version mismatch: - vue3.2.45 (D:\qjy-myApp\admin-app\node_modules\vue\index.js) - vue-template-compiler2.7.16 (D:\qjy-myApp\admin-app\node_modules\vue-template-compiler\package.json) This may cause things to work incorrectly.…...

计算机的错误计算(一百六十七)

摘要 将计算机的错误计算&#xff08;一百六十六&#xff09;中算式的分母有理化&#xff0c;然后再在 MATLAB 讨论其计算精度。本节说明&#xff0c;MATLAB 的输出与&#xff08;一百六十六&#xff09;的输出几乎一致&#xff0c;有效数字的错误率也相同。 例1. 探讨 …...

交叉编译openSSH

升级原系统中的SSHd服务 由于原系统自带的SSH版本过低存在漏洞风险&#xff0c;所以需要升级新版本的SSH 交叉编译前准备 需要下面三个库&#xff0c;都是开源的&#xff0c;去对应的网站下载即可 openssh-9.6p1.tar.gz openssl-1.1.1w.tar.gz zlib-1.3.1.tar.gz 这里没有…...

从零开始学GeoServer源码(二)添加支持arcgis切片功能

文章目录 参考文章环境背景1、配置打包好的程序1.1、下载GeoServer的war包1.2、下载GeoWebCache1.3、拷贝jar包1.4、修改配置文件1.4.1、拷贝geowebcache-arcgiscache-context.xml1.4.2、修改geowebcache-core-context.xml1.4.3、修改geowebcache-servlet.xml 1.5、配置切片信息…...

Android OTA 更新面试题及参考答案

什么是 OTA 更新&#xff1f; OTA 更新即空中下载技术&#xff08;Over-the-Air Technology&#xff09;更新&#xff0c;是一种通过无线网络对移动设备的系统软件或应用程序进行远程更新的技术手段 。 其原理是设备通过移动网络或 Wi-Fi 连接到服务器&#xff0c;服务器检测设…...

搜维尔科技:通过Touch力反馈主手实时通讯机械臂,进行远程操作

通过Touch力反馈主手实时通讯机械臂&#xff0c;进行远程操作 搜维尔科技&#xff1a;通过Touch力反馈主手实时通讯机械臂&#xff0c;进行远程操作...

Java ArrayList 与顺序表:在编程海洋中把握数据结构的关键之锚

我的个人主页 我的专栏&#xff1a;Java-数据结构&#xff0c;希望能帮助到大家&#xff01;&#xff01;&#xff01;点赞❤ 收藏❤ 前言&#xff1a;在 Java编程的广袤世界里&#xff0c;数据结构犹如精巧的建筑蓝图&#xff0c;决定着程序在数据处理与存储时的效率、灵活性以…...

React中事件处理和合成事件:理解与使用

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…...

在Vue3项目中引入省市区联动插件

1. 打开HBuilder X 图1 2. 新建一个空项目 文件->新建->项目->uni-app 填写项目名称&#xff1a;vue3demo 选择项目存放目录&#xff1a;D:/HBuilderProjects 一定要注意vue的版本&#xff0c;当前选择的版本为vue3 图2 点击“创建”之后进入项目界面 图3 其中各文件…...

动态内存管理(c语言)

我们通常开辟空间的方式 int val 20; //大小为4个字节 char arr[10] {0} //开辟出一块连续的空间且大小为10 但是上面开辟空间方式的特点 1.空间开辟大小是固定的 2.数组在声明得时候&#xff0c;必须指定数组得长度&#xff0c;它所需要得内存在编译时分配 但是以上的方式不能…...

SLF4J日志快速上手

tags: SpringBoot 日志 快速上手 SLF4J日志快速上手 第一步&#xff1a;添加日志相关配置 logging:level:root: INFO # 设置全局日志级别为 INFO&#xff0c;只显示重要的日志信息&#xff08;略过 DEBUG 和 TRACE 级别&#xff09;# org.hibernate.SQL: DEBUG # 对于 Hiber…...

【PyTorch】(基础三)---- 图像读取和展示

图像读取和展示 pytorch本身并不提供图像的读取和展示功能&#xff0c;利用pytorch执行计算机视觉任务的时候&#xff0c;通常是利用opencv等工具先进行图像处理&#xff0c;然后将结果转化成tensor类型传递给pytorch&#xff0c;在pytorch执行之后&#xff0c;也可以将tensor…...

【纪念365天】我的创作纪念日

过去的一年 没有注意加入csdn已经有一年了。 这几天翻看小猴儿的通知才发现时间来到了一年的纪念日。稍稍思索想要将这一段时间的学习到的知识以及偶然遇到的机遇做一下总结。 上一次写纪念日是来到csdn128天的时候&#xff0c; 200天前我的学习状态是非常疯狂的。 只记得我当时…...

flink学习(7)——window

概述 窗口的长度(大小): 决定了要计算最近多长时间的数据 窗口的间隔: 决定了每隔多久计算一次 举例&#xff1a;每隔10min,计算最近24h的热搜词&#xff0c;24小时是长度&#xff0c;每隔10分钟是间隔。 窗口的分类 1、根据window前是否调用keyBy分为键控窗口和非键控窗口…...

第十六届蓝桥杯模拟赛第二期题解—Java

第十六届蓝桥杯模拟赛/校赛第二期个人题解&#xff0c;有错误的地方欢迎各位大佬指正 问题一(填空题) 【问题描述】 如果一个数 p 是个质数&#xff0c;同时又是整数 a 的约数&#xff0c;则 p 称为 a 的一个质因数。 请问&#xff0c; 2024 的最大的质因数是多少&#xff1f; …...

数据库-MySQL-Dynamic-Datasource源码解析

文章目录 前言一、简介二、整体流程三、核心解析四、总结 前言 多数据源的应用在日常项目中也是很常见的场景。 dynamic-datasource的功能&#xff0c;用起来的确很方便&#xff0c;只需要一个DS注解&#xff0c;加上一些简单的配置即可完成多数据源的切换。究竟是怎么做到的…...

uniapp+vue2+uview2.0导航栏组件二次封装

样式 代码 <template><view class"navBar"><u-navbar :title"title" :titleColor"titleColor" :bgColor"bgColor" :safeAreaInsetTop"safeAreaInsetTop":autoBack"true" leftClick"leftClic…...

【Git 工具】用 IntelliJ IDEA 玩转 Git 分支与版本管理

文章目录 一、使用 IDEA 配置和操作 Git1.1 查看 Idea 中的 Git 配置1.2 克隆 Github 项目到本地 二、版本管理2.1 提交并推送修改2.2 拉取远程仓库2.3 查看历史2.4 版本回退 三、分支管理3.1 新建分支3.2 切换分支3.2 合并分支3.4 Cherry-Pick 参考资料 一、使用 IDEA 配置和操…...

异或-java-leetcode

1486.数组异或操作 给你两个整数&#xff0c;n 和 start 。 数组 nums 定义为&#xff1a;nums[i] start 2*i&#xff08;下标从 0 开始&#xff09;且 n nums.length 。 请返回 nums 中所有元素按位异或&#xff08;XOR&#xff09;后得到的结果。 示例 1&#xff1a; 输入…...

Jmeter中的测试片段和非测试原件

1&#xff09;测试片段 1--测试片段 功能特点 重用性&#xff1a;将常用的测试元素组合成一个测试片段&#xff0c;便于在多个线程组中重用。模块化&#xff1a;提高测试计划的模块化程度&#xff0c;使测试计划更易于管理和维护。灵活性&#xff1a;可以通过模块控制器灵活地…...

NeurIPS 2024 有效投稿达 15,671 篇,数据集版块内容丰富

NeurIPS&#xff0c;全称 Neural Information Processing Systems Conference&#xff0c;是神经信息处理系统的年度学术会议。该会议始于 1987 年&#xff0c;当时名为 NIPS。随着人工智能领域的快速发展&#xff0c;其影响力逐渐扩大&#xff0c;被越来越多的研究者和企业关注…...

力扣101. 对称二叉树

给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 提示&#xff1a; 树中节点数目在范围 [1, 1000] 内-100 < Node.val < 100 进阶&#xff1a;你可以运用递归和迭代两种方法解决这个问题吗&#xff1f; 代码&#xff1a; /*** Definition for a binary …...

Ubuntu 环境下的 C/C++ 编译与调试配置

详细教学文档&#xff1a;Ubuntu 环境下的 C/C 编译与调试配置 本文档将手把手引导你完成在 Ubuntu 环境中设置 VS Code 的 tasks.json 和 launch.json&#xff0c;实现以下目标&#xff1a; 统一管理输出文件&#xff1a;将所有编译生成的可执行文件统一存放到项目的 build …...

『VUE』36. Vue的应用概念(分析流程)

目录 创建应用挂载应用可执行文件公共资源总结 欢迎关注 『VUE』 专栏&#xff0c;持续更新中 欢迎关注 『VUE』 专栏&#xff0c;持续更新中 创建应用 首先引入createApp ,然后借助createApp 创造一个app对象 main.js import { createApp } from "vue"; import A…...

《基于FPGA的便携式PWM方波信号发生器》论文分析(三)——数码管稳定显示与系统调试

一、论文概述 基于FPGA的便携式PWM方波信号发生器是一篇由任青颖、庹忠曜、黄洵桢、李智禺和张贤宇 等人发表的一篇期刊论文。该论文主要研究了一种新型的信号发生器&#xff0c;旨在解决传统PWM信号发生器在移动设备信号调控中存在的精准度低和便携性差的问题 。其基于现场可编…...

mac上的建议xftp 工具

mac上的建议xftp 工具 最近使用mac比较频繁了&#xff0c;但是第一次重度使用mac里面有很多的工具都是新的&#xff0c;有的window版本的工具无法使用。 xftp 的平替 Cyberduck 从它的官网上下载是免费的&#xff0c;但是如果使用 Apple store 要花费198呢。这不就剩下一大笔…...

Hive | Hive 表如何查看所有分区

文章目录 概述使用 SHOW PARTITIONS 命令查看特定分区的信息获取详细的分区信息总结 概述 Apache Hive 是一个构建在 Hadoop 之上的数据仓库工具&#xff0c;它提供了 SQL 类似的查询语言&#xff08;称为 HiveQL&#xff09;&#xff0c;使得用户能够更容易地进行大数据处理和…...

MySQL系列之数据类型(Numeric)

导览 前言一、数值类型综述二、数值类型详解1. NUMERIC1.1 UNSIGNED或SIGNED1.2 数据类型划分 2. Integer类型取值和存储要求3. Fixed-Point类型取值和存储要求4. Floating-Point类型取值和存储要求 结语精彩回放 前言 MySQL系列最近三篇均关注了和我们日常工作或学习密切相关…...

4.6 JMeter HTTP信息头管理器

欢迎大家订阅【软件测试】 专栏&#xff0c;开启你的软件测试学习之旅&#xff01; 文章目录 前言1 HTTP信息头管理器的位置2 常见的HTTP请求头3 添加 HTTP 信息头管理器4 应用场景 前言 在 JMeter 中&#xff0c;HTTP信息头管理器&#xff08;HTTP Header Manager&#xff09…...

fpga 综合与优化设计

目录 Quartus Prime优化设置 1. 分析与综合设置 2. 物理综合优化 3. 适配设置 描述方法对综合的影响 1. 操作符的应用差异 2. 条件语句和分支语句的应用差异 3. 描述方式对综合电路的影响 优化设计方法 1. FPGA设计的基本原则 2. 常用优化设计方法 优化主要包括 4 个…...

计算机毕业设计Hadoop+Spark音乐推荐系统 音乐预测系统 音乐可视化大屏 音乐爬虫 HDFS hive数据仓库 机器学习 深度学习 大数据毕业设计

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

C嘎嘎探索篇:栈与队列的交响:C++中的结构艺术

C嘎嘎探索篇&#xff1a;栈与队列的交响&#xff1a;C中的结构艺术 前言&#xff1a; 小编在之前刚完成了C中栈和队列&#xff08;stack和queue&#xff09;的讲解&#xff0c;忘记的小伙伴可以去我上一篇文章看一眼的&#xff0c;今天小编将会带领大家吹奏栈和队列的交响&am…...

摄像头原始数据读取——opencv(cv::VideoCapture)

摄像头原始数据读取——opencv(cv::VideoCapture) 测试代码test.cpp #include <iostream> #include <string>#include <opencv2/opencv.hpp>std::string pixeformatcodec2string(int codec) {char pixeformat_name[5] { (char)((codec >> 0) & …...