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

CSDN编程题-每日一练(2023-08-27)

CSDN编程题-每日一练(2023-08-27)

  • 一、题目名称:异或和
  • 二、题目名称:生命进化书
  • 三、题目名称:熊孩子拜访

一、题目名称:异或和

时间限制:1000ms内存限制:256M

题目描述:

小张找到了一个整数 N,他想问问你从 1 到 N 的所有不同整数的异或和是多少, 请你回答他的问题。

输入描述:

第一行包含一个整数 N (1 <= N <= 100000)。

输出描述:

第一行输出一个整数, 代表从 1 到 N 的所有不同整数的异或和。

🚩 示例:

✔️ 示例1:

输入
5

输出
1

🔔 提示:
1 ^ 2 ^ 3 ^ 4 ^ 5 = 3 ^ 3 ^ 4 ^ 5 = 4 ^ 5 = 1。

🔔 解题思路:
根据异或的性质,可以得知一个数与自身异或的结果为0,即 a^a = 0。而对于任意一个数 a,a^0 = a。因此,从 1 到 N 的所有整数的异或和等价于从 1 到 N-1 的所有整数的异或和再与 N 进行异或运算。

代码1如下:

##输入的整数 N
N = int(input())##初始化异或和 xor_sum 为 0
xor_sum = 0##循环遍历从 1 到 N-1 的所有整数 i,并将 xor_sum 与 i 进行异或运算
for i in range(1, N):xor_sum ^= i
##将 xor_sum 与 N 进行异或运算,得到最终的异或和
xor_sum ^= N#输出异或和xor_sum
print(xor_sum)

在这里插入图片描述

代码2如下:

##计算从1到N的所有数字的异或和,并将结果输出#include <stdio.h>int main() {int N;##变量xor_sum为0,用于保存异或和int xor_sum = 0;scanf("%d", &N);##使用for循环从1遍历到N-1for (int i = 1; i < N; i++) {## 对变量xor_sum进行异或运算,将当前循环变量i与xor_sum进行异或,## 并将结果赋值给xor_sum,相当于累计计算异或和xor_sum ^= i;}##将变量N与xor_sum进行异或,并将结果赋值给xor_sum,相当于将N也纳入异或和的计算xor_sum ^= N;printf("%d\n", xor_sum);return 0;
}

在这里插入图片描述

代码3如下:

#include <iostream>
using namespace std;int main() {int N;cin >> N;int xor_sum = 0;for (int i = 1; i < N; i++) {xor_sum ^= i;}xor_sum ^= N;cout << xor_sum << endl;return 0;
}

在这里插入图片描述

代码4如下:

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int N = scanner.nextInt();int xor_sum = 0;for (int i = 1; i < N; i++) {xor_sum ^= i;}xor_sum ^= N;System.out.println(xor_sum);}
}

在这里插入图片描述
代码5如下:

package mainimport "fmt"func main() {var N intfmt.Scan(&N)xor_sum := 0for i := 1; i < N; i++ {xor_sum ^= i}xor_sum ^= Nfmt.Println(xor_sum)
}

在这里插入图片描述

二、题目名称:生命进化书

时间限制:1000ms内存限制:256M

题目描述:

小A有一本生命进化书,以一个树形结构记载了所有生物的演化过程。 为了探索和记录其中的演化规律,小A提出了一种方法,可以以字符串的形式将其复刻下来,规则如下: 初始只有一个根节点,表示演化的起点,依次记录 01 字符串中的字符, 如果记录 0,则在当前节点下添加一个子节点,并将指针指向新添加的子节点; 如果记录 1,则将指针回退到当前节点的父节点处。 现在需要应用上述的记录方法,复刻下它的演化过程。请返回能够复刻演化过程的字符串中, 字典序最小的 01 字符串; 注意:节点指针最终可以停在任何节点上,不一定要回到根节点。

输入描述:

parents[] 数组,其中,parents[i] 表示编号 i 节点的父节点编号(根节点的父节点为 -1)。

输出描述:

返回能够复刻演化过程的字符串中, 字典序最小 的 01 字符串

🚩示例:

✔️示例1

输入
* 输入样例1
[-1,0,0,2]
* 输入样例2
[-1,0,0,1,2,2]

输出
* 输出样例1
00110

解释:共存在 2 种记录方案:
第 1 种方案为:0(记录编号 1 的节点) -> 1(回退至节点 0) -> 0(记录编号 2 的节点) -> 0((记录编号 3 的节点))
第 2 种方案为:0(记录编号 2 的节点) -> 0(记录编号 3 的节点) -> 1(回退至节点 2) -> 1(回退至节点 0) -> 0(记录编号 1 的节点)
返回字典序更小的 ‘00110’

输出样例2
00101100

提示:

1 <= parents.length <= 10^4

-1 <= parents[i] < i (即父节点编号小于子节点)

🔔 解题思路:

利用深度优先搜索(DFS)的方式遍历树,并记录每个节点的演化路径,然后找出字典序最小的01字符串作为结果。

代码1如下:

import sys
##设置递归深度限制为100000,防止递归过深导致堆栈溢出
sys.setrecursionlimit(100000)  ##定义变量N为10000,表示节点数量的上限,可以避免数组或列表溢出的问题,并确保程序可以处理足够大的生物演化树
N = 10000##初始化变量n为0,表示当前已经添加的节点数量
n = 0
##创建一个大小为N的列表parents_node ,用于存储每个节点的父节点编号
parents_node = [0] * N
##创建一个大小为N的二维列表dp,用于存储每个节点的状态信息。dp[i][0]表示以节点i为根节点且不返回该节点的最小字符串,dp[i][1]表示以节点i为根节点且返回该节点的最小字符串
dp = [["", ""] for _ in range(N)]##创建一个大小为N的列表child_node ,用于存储每个节点的子节点列表
child_node = [[] for _ in range(N)]##递归函数dfs,用于遍历树并计算每个节点的最小字符串
def dfs(s):for v in child_node[s]:  ##遍历节点s的子节点列表,对每个子节点调用dfs函数dfs(v)
####计算以节点v为根节点且返回该节点的最小字符串时,加上当前节点s的值(0)和回退符号(1)构成的字符串a = "0" + dp[v][1] + "1"  
##计算以节点v为根节点且不返回该节点的最小字符串时,加上当前节点s的值(0)和子节点v的最小字符串(dp[v][0]和dp[v][1]中较小的一个)构成的字符串b = "0" + min(dp[v][0], dp[v][1])
##计算以节点s为根节点且返回该节点的最小字符串,要么是在a前面添加节点s的值和回退符号,要么是在a后面添加节点u的值和回退符号new_return = min(a + dp[s][1], dp[s][1] + a)
##计算以节点s为根节点且不返回该节点的最小字符串,要么是在b前面添加节点s的值和子节点v的最小字符串,要么是在a后面添加节点s的值和子节点v的最小字符串new_no_return = min(dp[s][1] + b, a + dp[s][0])##更新节点s的不返回的最小字符串dp[s][0] = new_no_return
##更新节点s的返回的最小字符串dp[s][1] = new_return##生物演化树的父节点列表,输入的字符串
input_str = input()##字符串的长度
input_len = len(input_str)###初始化变量processed_number为0,表示已经处理过的字符数量
processed_number = 0##函数getch,用于从输入字符串中获取字符
def getch():
##声明processed_number是全局变量global processed_number
##每次调用getch函数后,processed_number加1processed_number += 1
## 返回输入字符串中第processed_number个字符。return input_str[processed_number - 1]##函数read,从输入字符串中读取一个整数
def read():##初始化变量f为1,表示正数
##  x = 0: 初始化变量x为0,用于存储读取的整数f = 1x = 0
###调用getch函数获取一个字符char = getch()while char > '9' or char < '0':  ##当字符char 不是数字时循环执行以下代码块if char == '-':  ##如果字符char 是负号,则将变量f设为-1f = -1##再次调用getch函数获取一个字符char = getch()
##当字符char 是数字时循环执行以下代码块while char >= '0' and char <= '9':##将字符char转换为对应的数字,并将其加到变量x的末尾x = x * 10 + ord(char) - ord('0')## 再次调用getch函数获取一个字符char = getch()
##返回读取的整数,如果之前设定了f为-1,则返回负数return f * x###初始化变量root_node_number为0,表示树的根节点编号
root_node_number= 0
while processed_number < input_len:  ##当处理过的字符数量小于输入字符串的长度时循环执行以下代码块parents_node[n] = read()  ##将读取的整数作为第n个节点的父节点编号if parents_node[n] == -1:  ##如果第n个节点没有父节点(即是根节点)root_node_number= n  ##将当前节点编号赋值给root_node_number作为根节点的编号else:  ##否则,如果第n个节点有父节点child_node[parents_node[n]].append(n)  ##在父节点的子节点列表中添加当前节点n += 1  ##增加节点数量dfs(root_node_number)  ##调用dfs函数遍历树,并计算每个节点的最小字符串
##打印根节点的不返回和返回的最小字符串中较小的一个
print(min(dp[root_node_number][0], dp[root_node_number][1]))

在这里插入图片描述
代码2如下:

package mainimport ("fmt""strings"
)const N = 10000var (n             intparents_node  [N]intdp            [N][2]stringchild_node    [N][]intinput_str     stringprocessed_num int
)func dfs(s int) {for _, v := range child_node[s] {dfs(v)a := "0" + dp[v][1] + "1"b := "0" + min(dp[v][0], dp[v][1])new_return := min(a+dp[s][1], dp[s][1]+a)new_no_return := min(dp[s][1]+b, a+dp[s][0])dp[s][0] = new_no_returndp[s][1] = new_return}
}func getch() byte {char := input_str[processed_num]processed_num++return char
}func read() int {f := 1x := 0char := getch()for char > '9' || char < '0' {if char == '-' {f = -1}char = getch()}for char >= '0' && char <= '9' {x = x*10 + int(char-'0')char = getch()}return f * x
}func min(a, b string) string {if a < b {return a}return b
}func main() {fmt.Scanln(&input_str)input_str = strings.TrimSpace(input_str)input_len := len(input_str)root_node_number := 0for processed_num < input_len {parents_node[n] = read()if parents_node[n] == -1 {root_node_number = n} else {child_node[parents_node[n]] = append(child_node[parents_node[n]], n)}n++}dfs(root_node_number)fmt.Println(min(dp[root_node_number][0], dp[root_node_number][1]))
}

在这里插入图片描述

三、题目名称:熊孩子拜访

时间限制:1000ms内存限制:256M

题目描述:

已知存在一个长度为n的整数序列A。 A中所有元素按照从小到达的顺序进行排序。 现在执行操作倒置一段序列。 请找到A序列里的倒置子序列。

输入描述:

第一行输入整数n.(1<=n<=1000)。 第二行输入n个整数。(1<=num<=10000)

输出描述:

输出被倒置的数列的左值,右值。 如果没有输出0 0

🚩示例:

✔️示例1
输入
4
1 3 2 4

输出
2 3

🔔 解题思路:

根据题目描述,我们需要找到整数序列A中的倒置子序列。假设整个A序列是按照从小到大的顺序排列的,那么倒置子序列就是在这个有序序列中出现递减的部分,我们需要找到这个递减的部分的最左值和最右值。找到整数序列中的倒置子序列并输出。如果没有倒置子序列,则输出0 0。

代码1如下:

n = int(input().strip())
##按空格分割成多个子字符串,然后用列表推导式
## [int(item) for item in ...]将每个子字符串转换成整数,最后将这些整数放入列表中并赋值给变量arr
arr = [int(item) for item in input().strip().split()]def solution(n, arr):result = []  ##空列表result,用于存储结果# 初始化right_val为0,用于保存右值right_val = 0# 初始化left_val为0,用于保存左值left_val = 0##初始化next_val为0,表示当前遍历到的元素next_val = 0##遍历列表arr中的每个元素,赋值给变量itemfor item in arr:###如果next_val大于item且item大于right_val,即当前元素比上一个元素小且比右值大if next_val > item and item > right_val:##将next_val赋值给right_val,更新右值为上一个元素right_val = next_val##将item赋值给left_val,更新左值为当前元素left_val = item###如果next_val小于left_val且item大于right_val,即上一个元素比左值大且 当前元素比右值大elif next_val < left_val and item > right_val:## 将next_val赋值给left_val,更新左值为上一个元素left_val = next_val##将item赋值给next_val,更新下一个元素为当前元素next_val = item##将左值转换为字符串,并添加到结果列表result中result.append(str(left_val))##将右值转换为字符串,并添加到结果列表result中result.append(str(right_val))##如果结果列表为空if len(result) == 0:##将结果列表置为["0", "0"],表示没有倒置子序列result = ["0", "0"]return result  #返回结果列表result = solution(n, arr)
print(" ".join(result))

在这里插入图片描述

代码2如下:

#include <stdio.h>void solution(int n, int arr[], int result[]) {int right_val = 0;int left_val = 0;int next_val = 0;
##使用 for 循环从0遍历到 n-1for (int i = 0; i < n; i++) {
##将数组 arr 在索引 i 处的元素赋值给变量 item,即当前遍历到的元素int item = arr[i];##如果 next_val 大于 item 并且 item 大于 right_valif (next_val > item && item > right_val) {##将 next_val 赋值给 right_val,更新右值为上一个数right_val = next_val;##将 item 赋值给 left_val,更新左值为当前数left_val  = item;##否则,如果 next_val 小于 left_val 并且 item 大于 right_val} else if (next_val < left_val && item > right_val) {##将 next_val 赋值给 left_val,更新左值为上一个数left_val = next_val;}##将当前数 item 赋值给 next_val,表示下一个循环的上一个数是当前数next_val = item;}result[0] = left_val; ##将左值 left_val 存储到结果数组 result 的第一个位置result[1] = right_val; ##将右值 right_val 存储到结果数组 result 的第二个位置#如果结果数组的第一个和第二个位置都是0if (result[0] == 0 && result[1] == 0) {result[0] = 0; ##将结果数组的第1个位置设置为0result[1] = 0; ##将结果数组的第2个位置设置为0}
}int main() {int n;scanf("%d", &n);int arr[n];for (int i = 0; i < n; i++) {#读取一个整数n,并将其赋值给数组 arr 在索引 i 处的元素scanf("%d", &arr[i]);     }int result[2]; ##声明一个大小为2的整数数组 result,用于保存结果solution(n, arr, result);printf("%d %d\n", result[0], result[1]);return 0;
}

代码3如下:

n = int(input())
left_val = 0  ##初始化变量left_val为0,用于保存左值
right_val = 0  ##初始化变量right_val为0,用于保存右值
next_val = 0  ##初始化变量next_val为0,表示当前遍历到的元素位置arr = input().split()  # 读取一行输入并拆分为字符串列表##使用for循环迭代1到n之间的每个数,赋值给变量i。范围是左闭右开的,所以不包含n + 1
for i in range(1, n + 1):##如果当前迭代到的是第一个数if i == 1:##将列表arr 的第一个元素转换为整数,并赋值给变量temptemp = int(arr[0])#如果当前迭代到的不是第一个数else:##将变量temp的值赋给临时变量tt = temp##将列表values中索引为i - 1的元素转换为整数,并赋值给变量temptemp = int(arr[i - 1])##如果上一个数t大于当前数temp,即出现了倒置if t > temp:##如果next_val为0,表示当前是第一个倒置if next_val == 0:##将上一个数t赋值给right_val,更新右值为上一个数right_val = t##将当前数temp赋值给left_val,更新左值为当前数left_val = temp##将next_val设为1,表示已经找到了第一个倒置next_val = 1#如果已经找到了第一个倒置else:##将当前数temp赋值给left_val,更新左值为当前数left_val = temp
##打印输出左值和右值
print(left_val , right_val )

在这里插入图片描述

相关文章:

CSDN编程题-每日一练(2023-08-27)

CSDN编程题-每日一练&#xff08;2023-08-27&#xff09; 一、题目名称&#xff1a;异或和二、题目名称&#xff1a;生命进化书三、题目名称&#xff1a;熊孩子拜访 一、题目名称&#xff1a;异或和 时间限制&#xff1a;1000ms内存限制&#xff1a;256M 题目描述&#xff1a; …...

机器视觉之平面物体检测

平面物体检测是计算机视觉中的一个重要任务&#xff0c;它通常涉及检测和识别在图像或视频中出现的平面物体&#xff0c;如纸张、标志、屏幕、牌子等。下面是一个使用C和OpenCV进行平面物体检测的简单示例&#xff0c;使用了图像中的矩形轮廓检测方法&#xff1a; #include &l…...

C#开发WinForm之DataGridView开发

前言 DataGridView是开发Winform的一个列表展示&#xff0c;类似于表格。学会下面的基本特征用法&#xff0c;再辅以经验&#xff0c;基本功能开发没问题。 1.设置 DataGridView表格行首为序号索引, //设置 DataGridView表格行首为序号索引private void dataGridView1_RowPost…...

PDFPrinting.Net Crack

PDFPrinting.Net Crack 它能够轻松灵活地预测完美的打印结果以及用户文件的示例性显示。在.NET的PDF打印中&#xff0c;可以快速浏览最关键的元素。如果用户需要获得更详细的概述&#xff0c;那么他可以查看快速入门手册&#xff0c;甚至现有文档的详细概述参考。 在这种情况下…...

git操作:将一个仓库的分支提交到另外一个仓库分支

这个操作&#xff0c;一般是同步不同网站的同个仓库&#xff0c;比如说gitee 和github。某个网站更新了&#xff0c;你想同步他的分支过来。然后基于分支开发或者其它。 操作步骤 1.本地先clone 你自己的仓库。也就是要push 分支的仓库。比如A仓库&#xff0c;把B仓库分支&am…...

基于Java+SpringBoot+Vue前后端分离医院资源管理系统设计和实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…...

Android——基本控件下(十七)

1. 文本切换&#xff1a;TextSwitcher 1.1 知识点 &#xff08;1&#xff09;理解TextSwitcher和ViewFactory的使用。 1.2 具体内容 范例&#xff1a;切换显示当前时间 <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools&…...

HCIP-HCS华为私有云

1、概述 HCS&#xff08;HuaweiCoudStack&#xff09;华为私有云&#xff1a;6.3 之前叫FusionSphere OpenStack&#xff0c;6.3.1 版本开始叫FusionCloud&#xff0c;6.5.1 版本开始叫HuaweiCloud Stack (HCS)华为私有云软件。 开源openstack&#xff0c;发放云主机的流程&am…...

docker下载github项目失败

Docker 在构建过程中直接从 GitHub 下载项目时超时&#xff0c;可能是由于网络问题、GitHub 访问限制或其他原因导致的。以下是一些建议和解决方法&#xff1a; 预先下载项目: 在构建 Docker 镜像之前&#xff0c;首先在宿主机上手动克隆 GitHub 项目&#xff0c;然后使用 COPY…...

【CSS】网站 网格商品展示 模块制作 ( 清除浮动需求 | 没有设置高度的盒子且内部设置了浮动 | 使用双伪元素清除浮动 )

一、清除浮动需求 ( 没有设置高度的盒子且内部设置了浮动 ) 绘制的如下模块 : 在上面的盒子中 , 没有设置高度 , 只设置了一个 1215px 的宽度 ; 在列表中每个列表项都设置了 浮动 ; /* 网格商品展示 */ .box-bd {/* 处理列表间隙导致意外换行问题一排有 5 个 228x270 的盒子…...

文本分类任务

文章目录 引言1. 文本分类-使用场景2. 自定义类别任务3. 贝叶斯算法3.1 预备知识3.2 贝叶斯公式3.3 贝叶斯公式的应用3.4 贝叶斯公式在NLP中的应用3.5 贝叶斯公式-文本分类3.6 代码实现3.7 贝叶斯算法的优缺点 4. 支持向量机4.1 支持向量机-核函数4.2 支持向量机-解决多分类4.3…...

Pyecharts教程(一):Python中的pyecharts库绘制3D曲面图

Pyecharts教程(一):Python中的pyecharts库绘制3D曲面图 作者:安静到无声 个人主页 目录 Pyecharts教程(一):Python中的pyecharts库绘制3D曲面图实验结果推荐专栏在Python中,我们可以使用pyecharts库来绘制各种图表,如柱状图、折线图、饼图等。最近,我在学习如何使用pyec…...

Unity音频基础概念

一、音源与音频侦听器 游戏画面能够被观众看到&#xff0c;是因为有渲染器和摄像机&#xff0c;同样音频能够被听到&#xff0c;也要有声音的发出者与声音的接收者。声音的发出者叫做音源&#xff0c;接收者叫做音频侦听器。Audio Source与Audio Listener都是组件&#xff0c;…...

sklearn Preprocessing 数据预处理功能

scikit-learn&#xff08;或sklearn&#xff09;的数据预处理模块提供了一系列用于处理和准备数据的工具。这些工具可以帮助你在将数据输入到机器学习模型之前对其进行预处理、清洗和转换。以下是一些常用的sklearn.preprocessing模块中的类和功能&#xff1a; 1. 数据缩放和中…...

创建和分析二维桁架和梁结构研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

SpringBoot实现文件上传和下载笔记分享(提供Gitee源码)

前言&#xff1a;这边汇总了一下目前SpringBoot项目当中常见文件上传和下载的功能&#xff0c;一共三种常见的下载方式和一种上传方式&#xff0c;特此做一个笔记分享。 目录 一、pom依赖 二、yml配置文件 三、文件下载 3.1、使用Spring框架提供的下载方式 3.2、通过IOUti…...

Git工作流

实际开发项目使用到的分支: main&#xff1a;生产环境&#xff0c;也就是你们在网上可以下载到的版本&#xff0c;是经过了很多轮测试得到的稳定版本。 release&#xff1a; 开发内部发版&#xff0c;也就是测试环境。 dev&#xff1a;所有的feature都要从dev上checkout。 fea…...

【Git Bash】简明从零教学

目录 Git 的作用官网介绍简明概要 Git 下载链接Git 的初始配置配置用户初始化本地库 Git 状态查询Git 工作机制本地工作机制远端工作机制 Git 的本地管理操作add 将修改添加至暂存区commit 将暂存区提交至本地仓库日志查询版本穿梭 Git 分支查看分支创建与切换分支跨分支修改与…...

【QT5-自我学习-线程qThread练习-两种使用方式-2:通过继承Qobject类-自己实现功能函数方式-基础样例】

【QT5-自我学习-线程qThread练习-两种使用方式-2&#xff1a;通过继承Qobject类-自己实现功能函数方式-基础样例】 1、前言2、实验环境3-1、学习链接-参考文章3-2、先前了解-自我总结&#xff08;1&#xff09;线程处理逻辑事件&#xff0c;不能带有主窗口的事件&#xff08;2&…...

两款开箱即用的Live2d

目录 背景第一款&#xff1a;开箱即用的Live2d在vue项目中使用html页面使用在线预览依赖文件地址配置相关参数成员属性源码 模型下载 第二款&#xff1a;换装模型超多的Live2d在线预览代码示例源码 模型下载 背景 从第一次使用服务器建站已经三年多了&#xff0c;记得那是在2…...

LAMP架构详解+构建LAMP平台之Discuz论坛

LAMP架构详解构建LAMP平台之Discuz论坛 1、LAPM架构简介1.1动态资源与语言1.2LAPM架构得组成1.3LAPM架构说明1.4CGI和astcgi1.4.1CGI1.4.2fastcgi1.4.3CGI和fastcgi比较 2、搭建LAMP平台2.1编译安装apache httpd2.2编译安装mysql2.3编译安装php2.4安装论坛 1、LAPM架构简介 1.…...

如何使用腾讯云服务器搭建网站?新手建站教程

使用腾讯云服务器搭建网站全流程&#xff0c;包括轻量应用服务器和云服务器CVM建站教程&#xff0c;轻量可以使用应用镜像一键建站&#xff0c;云服务器CVM可以通过安装宝塔面板的方式来搭建网站&#xff0c;腾讯云服务器网分享使用腾讯云服务器建站教程&#xff0c;新手站长搭…...

mybatis plus 控制台和日志文件中打印sql配置

1 控制台输出sql 配置mybatis-plus的日志实现类为StdOutImpl&#xff0c;该实现类中打印日志是通过System.out.println(s)的方式来打印日志的 mybatis-plus:configuration:log-impl: org.apache.imbatis.logging.stdout.StdOutImpl2 日志文件中写入sql 日志文件中输入sql需要…...

苍穹外卖总结

前言 1、软件开发流程 瀑布模型需求分析//需求规格说明书、产品原型↓ 设计 //UI设计、数据库设计、接口设计↓编码 //项目代码、单元测试↓ 测试 //测试用例、测试报告↓上线运维 //软件环境安装、配置第一阶段&#xff1a;需求分析需求规格说明书、产品原型一般来说…...

Git 删除已经合并的本地分支

在使用 Git 的开发流程中&#xff0c;经常会创建很多的 Git 分支&#xff0c;包括功能分支&#xff08;features/*&#xff09;、发布分支&#xff08;release/*&#xff09;和 hotfix 分支&#xff08;hotfix/*&#xff09;。在开发了一段时间之后&#xff0c;本地就会有出现很…...

递归算法应用(Python版)

文章目录 递归递归定义递归调用的实现递归应用数列求和任意进制转换汉诺塔探索迷宫找零兑换-递归找零兑换-动态规划 递归可视化简单螺旋图分形树&#xff1a;自相似递归图像谢尔宾斯基三角 分治策略优化问题和贪心策略 递归 递归定义 递归是一种解决问题的方法&#xff0c;其精…...

有什么react进阶的项目推荐的?

前言 整理了一些react相关的项目&#xff0c;可以选择自己需要的练习&#xff0c;希望对你有帮助~ 1.ant-design Star&#xff1a;87.1k 阿里开源的react项目&#xff0c;作为一个UI库&#xff0c;省去重复造轮子的时间 仓库地址&#xff1a;https://github.com/ant-design/…...

基于串口透传模块,单片机无线串口空中下载测试

基于串口透传模块&#xff0c;单片机无线串口空中下载测试 ✨无线串口下载&#xff0c;其本质还是串口下载方式&#xff0c;只不过省去了单片机和ISP上位机工具之间的物理有线连接&#xff0c;中间的数据通过无线串口透传模块进行数据中转&#xff0c;传递到单片机串口上。串口…...

研磨设计模式day11代理模式

目录 场景 代码实现 ​编辑 解析 定义 代理模式调用示意图 代理模式的特点 本质 ​编辑何时选用 场景 我有一个订单类&#xff0c;包含订单数、用户名和商品名&#xff0c;有一个订单接口包含了对订单类的getter和setter 现在有一个需求&#xff0c;a创建的订单只…...

vue2 路由进阶,VueCli 自定义创建项目

一、声明式导航-导航链接 1.需求 实现导航高亮效果 如果使用a标签进行跳转的话&#xff0c;需要给当前跳转的导航加样式&#xff0c;同时要移除上一个a标签的样式&#xff0c;太麻烦&#xff01;&#xff01;&#xff01; 2.解决方案 vue-router 提供了一个全局组件 router…...

企业网站必须做可信认证吗/三亚百度推广地址

本文实例为大家分享了java封装前端查询条件的具体代码&#xff0c;供大家参考&#xff0c;具体内容如下import hengyi.oa.mobile.exception.ServiceException;import java.io.UnsupportedEncodingException;import java.util.List;import java.util.Map;import java.util.Map.E…...

中国网站建设网/百度开户流程

http://www.mcu123.com/news/Article/web/uc/200609/2223.html转载于:https://www.cnblogs.com/stoneresearch/archive/2008/10/21/4336881.html...

做网站设计需要多久/理发美发培训学校

女孩倒在秋千上&#xff0c;男孩用力地推啊推啊。    男孩篮球比赛&#xff0c;女孩叫破了嗓子&#xff0c;第二天依然出现在男孩面前说昨天你真逊。  女孩说我要最漂亮的那朵&#xff0c;男孩奋不顾身地爬上树&#xff0c;然后遍体鳞伤地对女孩说给你。  男孩的头上出…...

清远网站制作/网站搭建外贸

真的很想吐槽一下李航老师后面的附录&#xff0c;看的我是云头雾里&#xff0c;上网查了很多资料才搞懂。 这篇文章主要讲解牛顿法和拟牛顿法一些算法思路上的由来&#xff0c;作为附录的补充&#xff0c;具体算法细节可以参考那本书1.牛顿法首先你需要知道的是牛顿法本身是一个…...

炫彩发光字制作网站/广东网站se0优化公司

最近一直找java8相关新特性的文章&#xff0c;发现都太没有一个连贯性&#xff0c;毕竟大家写博客肯定都有自己的侧重点&#xff0c;这里找到一本书&#xff0c;专门介绍java8新特性的&#xff0c;感觉大家可以看看《写给大忙人看的JavaSE8》.这里我会结合书中的知识以及网上的…...

网站建设的开多少税率/seo优化培训课程

问题&#xff1a; 给定一个栈&#xff0c;逆置栈中的内容&#xff0c;要求只能只用栈操作push和pop&#xff0c;不能用数组、栈、队列等做过渡。 基本思路&#xff1a; 用递归&#xff0c;先将原来栈中的元素递归出栈&#xff0c;直至栈为空&#xff0c;然后在每次递归向上步…...