Python | 蓝桥杯进阶第一卷——字符串
欢迎交流学习~~
专栏: 蓝桥杯Python组刷题日寄
蓝桥杯进阶系列:
🏆 Python | 蓝桥杯进阶第一卷——字符串
🔎 Python | 蓝桥杯进阶第二卷——递归(待续)
💝 Python | 蓝桥杯进阶第三卷——动态规划(待续)
✈️ Python | 蓝桥杯进阶第四卷——图论(待续)
🌞 Python | 蓝桥杯进阶第五卷——数论(待续)
🌠 Python | 蓝桥杯进阶第六卷——贪心(待续)
💎 Python | 蓝桥杯进阶第七卷——搜索(待续)
Python | 蓝桥杯进阶第一卷——字符串
- 🎁 字符串的修改
- 🌲 ISBN码
- 🚀 完美的代价
- 💡 字符串的展开
- 🍞 正则问题
🎁 字符串的修改
时间限制:
1s
内存限制:
128MB
题目描述:
设A和B是两个字符串。我们要用最少的字符操作次数,将字符串A转换为字符串B。这里所说的字符操作共有三种:
- 删除一个字符;
- 插入一个字符;
- 将一个字符改为另一个字符。
对任给的两个字符串 A
和 B
,计算出将字符串 A
变换为字符串 B
所用的最少字符操作次数。
输入描述:
第一行为字符串 A
;第二行为字符串 B
;字符串 A
和 B
的长度均小于 200
。
输出描述:
只有一个正整数,为最少字符操作次数。
样例输入:
sfdxbqw
gfdgw
样例输出:
4
解题思路
本题思路如下:
- 求解两字符串的最长公共子序列,得到其长度
L
; - 计算最少字符操作次数
本题思路的核心在于 求解两个字符串的最长公共子序列。
可以选择用循环暴力求解,但是时间复杂度过高,容易超时。因此我们这里可以选用时间复杂度更低的动态规划方法:
dp[i][j]
表示a[:i-1]
和b[:j-1]
的最长公共子序列的长度i>0, j>0
,对应dp
数组的大小为dp[l1+1][l2+1]
,l1
和l2
为两个字符串的长度;i=0
或j=0
表示空字符串,此时公共子序列长度都为0
,因此我们将dp
数组都初始化为0
;- 状态转移具体见代码。
而对于计算最终结果,其计算方式为:max(l1, l2) - L
。
因为,如果想将较长的字符串变为较短的字符串,除了最长公共子序列,其余字符都需要变化。
参考代码
a = input()
b = input()
l1 = len(a)
l2 = len(b)
# dp数组,
# dp[i][j]表示a[:i-1]和b[:j-1]中最长公共子序列的长度(i>0, j>0)
# i=0 和 j=0 表示空字符串,初始化dp数组为全0
dp = [[0 for j in range(l2 + 1)] for i in range(l1 + 1)]
for i in range(1, l1+1):for j in range(1, l2+1):if a[i-1] == b[j-1]:# a的第i-1个字符和b的第j-1个字符相同dp[i][j] = dp[i-1][j-1] + 1else:dp[i][j] = max(dp[i-1][j], dp[i][j-1])res = max(l1, l2) - dp[-1][-1]
print(res)
🌲 ISBN码
题目:
时间限制:
1s
内存限制:
128MB
题目描述:
每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括 9
位数字、1
位识别码和 3
位分隔符,其规定格式如 x-xxx-xxxxx-x
,其中符号 -
就是分隔符(键盘上的减号),最后一位是识别码,例如 0-670-82162-4
就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如 0
代表英语;第一个分隔符 -
之后的三位数字代表出版社,例如 670
代表维京出版社;第二个分隔符后的五位数字代表该书在该出版社的编号;最后一位为识别码。
识别码的计算方法如下:
首位数字乘以 1
加上次位数字乘以 2
……以此类推,用所得的结果 mod 11
,所得的余数即为识别码,如果余数为 10
,则识别码为大写字母 X
。例如ISBN号码 0-670-82162-4
中的识别码 4
是这样得到的:对 067082162
这 9
个数字,从左至右,分别乘以1,2,...,9
,再求和,即 0×1+6×2+……+2×9=158
,然后取158 mod 11
的结果 4
作为识别码。
你的任务是编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出 Right
;如果错误,则输出你认为是正确的ISBN号码。
输入描述:
输入只有一行,是一个字符序列,表示一本书的ISBN号码(保证输入符合ISBN号码的格式要求)。
输出描述:
输出共一行,假如输入的ISBN号码的识别码正确,那么输出 Right
,否则,按照规定的格式,输出正确的ISBN号码(包括分隔符 -
)。
样例输入:
0-670-82162-4
0-670-82162-0
样例输出:
Right
0-670-82162-4
解题思路
本题思路比较简单,注意细节的处理:
- 字符串以
-
分割; - 当计算出的识别码为
10
时,将其转换为X
;
参考代码
while True:try:raw = input()s = ''.join(raw.split('-'))id = 0for i in range(len(s)-1):id += int(s[i]) * (i + 1)id %= 11id = str(id)if id == '10':id = 'X'if id == s[-1]:print('Right')else:print(raw[:-1] + id)except:break
🚀 完美的代价
时间限制:
1s
内存限制:
128MB
题目描述:
回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。
交换的定义是:交换两个相邻的字符
例如:对于 mamad
:
第一次交换 ad
: mamda
第二次交换 md
: madma
第三次交换 ma
: madam
(回文!完美!)
输入描述:
第一行是一个整数 N
,表示接下来的字符串的长度(N < = 8000)
第二行是一个字符串,长度为 N
,只包含小写字母
输出描述:
如果可能,输出最少的交换次数。
否则输出 Impossible
样例输入:
5
mamad
样例输出:
3
解题思路
本题利用双指针,其中头指针 head
从前向后遍历,尾指针 tail
从后向前遍历。
退出循环的条件:
- 字符串长度为偶数,但是有频数为奇数的字母
- 字符串长度为奇数,但是有多于
1
个的频数为奇数的字母
具体思路见参考代码。
参考代码
n = int(input())
s = list(input())
count = 0 # 记录交换次数
flag = 0 # 标记是否有字母频数为奇数
res = True # 标记是否为Impossible(是Impossible置为False)# 双指针
L = n - 1 # 头指针搜索范围,到倒数第2个
for head in range(L):# 对于每一个s[head],用尾指针去搜索是否有相同的字母s[tail]for tail in range(L, head - 1, -1):# 指针tail搜索完毕,没有发现s[head] == s[tail]# 说明该字母频数为奇数 1,且该字母在回文序列中一定在中间if head == tail:# 如果字符串长度为偶数# 字符串长度为奇数,但是已经有 flag == 1if n%2 == 0 or flag == 1:res = Falsebreakflag = 1# (n//2 - head) 为将该字母移动到中间位置的交换次数count += n//2 - head# 发现了 s[head] == s[tail]elif s[head] == s[tail]:# 交换位置for i in range(tail, L):s[i], s[i+1] = s[i+1], s[i]count += 1L -= 1break# 如果是impossible,退出外层循环if res == False:breakif res == False:print('Impossible')
else:print(count)
💡 字符串的展开
时间限制:
1s
内存限制:
128MB
题目描述:
在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于 d-h
或者 4-8
的字串,我们就把它当作一种简写,输出时,用连续递增的字母获数字串替代其中的减号,即,将上面两个子串分别输出为 defgh
和 45678
。在本题中,我们通过增加一些参数的设置,使字符串的展开更为灵活。具体约定如下:
- 遇到下面的情况需要做字符串的展开:在输入的字符串中,出现了减号
-
,减号两侧同为小写字母或同为数字,且按照ASCII码的顺序,减号右边的字符严格大于左边的字符。 - 参数
p1
:展开方式。p1=1
时,对于字母子串,填充小写字母;p1=2
时,对于字母子串,填充大写字母。这两种情况下数字子串的填充方式相同。p1=3
时,不论是字母子串还是数字字串,都用与要填充的字母个数相同的星号*
来填充。 - 参数
p2
:填充字符的重复个数。p2=k
表示同一个字符要连续填充k
个。例如,当p2=3
时,子串d-h
应扩展为deeefffgggh
。减号两边的字符不变。 - 参数
p3
:是否改为逆序:p3=1
表示维持原来顺序,p3=2
表示采用逆序输出,注意这时候仍然不包括减号两端的字符。例如当p1=1
、p2=2
、p3=2
时,子串d-h
应扩展为dggffeeh
。 - 如果减号右边的字符恰好是左边字符的后继,只删除中间的减号,例如:
d-e
应输出为de
,3-4
应输出为34
。如果减号右边的字符按照 ASCII码的顺序小于或等于左边字符,输出时,要保留中间的减号,例如:d-d
应输出为d-d
,3-1
应输出为3-1
。
输入描述:
输入包括两行:
第 1
行为用空格隔开的 3
个正整数,一次表示参数 p1
,p2
,p3
。
第 2
行为一行字符串,仅由数字、小写字母和减号 -
组成。行首和行末均无空格。
数据规模和约定
100%的数据满足:1<=p1<=3
,1<=p2<=8
,1<=p3<=2
。字符串长度不超过 100
输出描述:
输出只有一行,为展开后的字符串.
样例输入:
1 2 1
abcs-w1234-9s-4zz
样例输出:
abcsttuuvvw1234556677889s-4zz
解题思路
- 符号
-
只会在s[1:len(s)-1]
之间(s
为输入字符串),因此要在这个范围内遍历,找到符号-
并将其展开; - 满足展开的条件,即要判断左右两边的字符的ASCII码关系;
- 之后根据
p3->p1->p2
的判断顺序对展开字符进行修改。
具体见代码。
参考代码
p1, p2, p3 = map(int, input().split())
s = input()
res = s[0]
# '-' 只会在s[1:len(s)-1]中间,因此s的首尾不需要变化
for i in range(1, len(s)-1):left, mid, right = s[i-1], s[i], s[i+1]# 遇到 '-' 并且左右字符满足如下条件:# 条件1:left<right# 条件2:(left>='0' and right<='9') or (left>='a' and right<='z') if mid == '-' and left < right and ((left >= '0' and right <= '9') or (left >= 'a' and right <= 'z')):## 判断顺序:p3 -> p1 -> p2## p3if p3 == 1:# 顺序index_j = [j for j in range(ord(left)+1, ord(right))]else:# 逆序index_j = [j for j in range(ord(right)-1, ord(left), -1)]## p1for j in index_j:# chr()转为字符tmp = chr(j)if p1 == 2:# 变为大写tmp = tmp.upper()elif p1 == 3:# 变为 '*'tmp = '*'## p2# 重复 p2 次res += tmp * p2else:res += mid# 尾巴
res += s[-1]
print(res)
🍞 正则问题
时间限制:
1s
内存限制:
128MB
题目描述:
考虑一种简单的正则表达式:
只由 x ( ) |
组成的正则表达式。
小明想求出这个正则表达式能接受的最长字符串的长度。
例如:((xx|xxx)x|(x|xx))xx
能接受的最长字符串是: xxxxxx
,长度是 6
。
输入描述:
一个由 x()|
组成的正则表达式。输入长度不超过 100
,保证合法。
输出描述:
这个正则表达式能接受的最长字符串的长度。
样例输入:
((xx|xxx)x|(x|xx))xx
样例输出:
6
解题思路
该问题是利用 深度优先遍历 的思想,具体实现见下面的参考代码。
这里我们以样例逐步说明算法原理,将参考代码进行简单修改,可以帮助我们理解在哪一层搜索:
# 测试代码
s = '((xx|xxx)x|(x|xx))xx'
i = 0
floor = 0
def dfs():global i, floorprint(f'此时: i = {i}')floor += 1print(f'进入一层,此时的层数为 {floor}')res = 0while i < len(s):# 遇到 '(',递归调用函数,对接下的 'x' 计数if s[i] == '(':i += 1res += dfs()i += 1print(f'此时: i = {i}')# 遇到 ')',返回计数结果elif s[i] == ')':floor -= 1print(f'退出一层,此时的层数为 {floor}')return res# 遇到 'x',计数+1,索引后移elif s[i] == 'x':i += 1print(f'此时: i = {i}')res += 1# 遇到 '|',返回左右两边的较大值elif s[i] == '|':i += 1res = max(res, dfs())return resdfs()
输出结果:
此时: i = 0
进入一层,此时的层数为 1
此时: i = 1
进入一层,此时的层数为 2
此时: i = 2
进入一层,此时的层数为 3
此时: i = 3
此时: i = 4
此时: i = 5
进入一层,此时的层数为 4
此时: i = 6
此时: i = 7
此时: i = 8
退出一层,此时的层数为 3
退出一层,此时的层数为 2
此时: i = 9
此时: i = 10
此时: i = 11
进入一层,此时的层数为 3
此时: i = 12
进入一层,此时的层数为 4
此时: i = 13
此时: i = 14
进入一层,此时的层数为 5
此时: i = 15
此时: i = 16
退出一层,此时的层数为 4
退出一层,此时的层数为 3
此时: i = 17
退出一层,此时的层数为 2
退出一层,此时的层数为 1
此时: i = 18
此时: i = 19
此时: i = 20
参考代码
s = list(input().strip())
i = 0def dfs():global ires = 0while i < len(s):# 遇到 '(',递归调用函数,对接下的 'x' 计数if s[i] == '(':i += 1res += dfs()i += 1# 遇到 ')',返回计数结果elif s[i] == ')':return res# 遇到 'x',计数+1,索引后移elif s[i] == 'x':i += 1res += 1# 遇到 '|',返回左右两边的较大值elif s[i] == '|':i += 1res = max(res, dfs())return resprint(dfs())
相关文章:
Python | 蓝桥杯进阶第一卷——字符串
欢迎交流学习~~ 专栏: 蓝桥杯Python组刷题日寄 蓝桥杯进阶系列: 🏆 Python | 蓝桥杯进阶第一卷——字符串 🔎 Python | 蓝桥杯进阶第二卷——递归(待续) 💝 Python | 蓝桥杯进阶第三卷——动态…...
2023-03-03 mysql列存储-cpu占用100%-追踪思路
摘要: 最近在处理mysql列存储时, 发现在执行explain时, cpu占用达到了100%. 本文分析定位该问题的思路过程 现象: mysqld进程占用100%使用kill processlist终止会话, 无响应查看show processings; 发现一直在运行mysql> show processlist; +----+-----------------+-----…...
JVM—类加载子系统
JVM细节版架构图 本文针对Class Loader SubSystem这一块展开讲解类加载子系统的工作流程 类加载子系统作用 1.类加载子系统负责从文件系统或者网络中加载class文件,class文件在文件开头有特定的文件标识即16进制CA FE BA BE; 2.加载后的Class类信息…...
在codeIgniter3中session.php中的数组追加值
如果key是字符串时,输出什么值?会直接把atime()的时间戳添加到key是字符串时,输出什么值?会直接把atime()的时间戳添加到key是字符串时,输出什么值?会直接把atime()的时间戳添加到arr[‘vars’]数组里面&am…...
Windows环境下Gpu版本的Pytorch安装
文章目录安装步骤总览(6步)1 首先看电脑有没有显卡,显卡是否支持cuda软件1.1 先看自己电脑是否有显卡1.2 两种方法看自己的电脑的显卡驱动支持的CUDA1.3 显卡,显卡驱动、CUDA、CUDNN 4者说明2 安装CUDA,就是1个软件2.1 检测自己电…...
项目实战典型案例13——学情页面逻辑问题
学情页面逻辑问题一:背景介绍二:学情页面逻辑问题分析逻辑问题缓存滥用的问题三:LocalStorage基础知识数据结构特性应用场景localStorage常用方法四:总结升华一:背景介绍 本篇博客是对项目开发中出现的学情页面逻辑问…...
工作日志day02
1.云计算? 相关职位 开源软件和linux起源: 自由软件之父:理查德.斯托曼linux之父:林纳斯.本纳第克特.托瓦兹linux发行版 RHEL:Red Hat Enterprise Linux 红帽linux商业公司CentOS:Community Enterprise Operating Sys…...
C++Primer16.1.6节练习
练习16.28: 简易的shared_ptr代码如下 #include <iostream> #include <vector> #include <list> using namespace std;//shared_ptr模板 template<typename T>class SharedPtr {friend SharedPtr<T>& MakeShared(T* t); public…...
初尝并行编程
进程被分为后台进程和应用进程 大部分后台进程在系统开始运行时被操作系统启动,完成操作系统的基础服务功能。大部分应用进程由用户启动,完成用户所需的具体应用功能 进程由程序段、数据段、进程控制块三部分组成 程序段也被称为是代码段,…...
keepalived学习记录:对其vip漂移过程采用gdb跟踪
对其vip漂移过程采用gdb跟踪keepalived工具主要功能产生vip漂移过程两种情况gdb调试常用命令gdb调试时打到的函数栈(供学习参考)函数栈的图是本人理解下画的,不对请多指正 keepalived主要有三个进程,父进程是core进程,…...
51单片机串口通讯原理及程序源码-----day8
51单片机串口通讯原理及程序源码-----day8 1.定义单片机为TTL电平:高 5V 低 0V RS232电平: 计算机的串口高 -12V 低12V 所以计算机与单片机之间通讯时需要加电平转换芯片CH340T 、 MAX232。 2.通信分类: (1)并行通信通…...
mongodb入门到使用(下)
mongodb中常用命令操作一、用户操作二、创建用户三、数据库操作基本操作四、扩展操作五、集合操作一、用户操作 在mongo中使用mongodb都需要在admin数据库中操作。然后在使用下面的命令 use admin二、创建用户 db.createUser({"user":"imooc", #用户名&q…...
云HIS系统源码 医院his源码 云his源码
大型医院his系统源码 SaaS运维平台多医院入驻强大的电子病历完整文档 ,有演示 一、系统概述: 基层卫生健康云是一款满足基层医疗机构各类业务需要的健康云产品。该产品能帮助基层医疗机构完成日常各类业务,提供病患挂号支持、病患问诊、电子…...
朴素贝叶斯法学习笔记
频率派和贝叶斯派 频率派认为可以通过大量实验,从样本推断总体。比如假定总体服从均值为μ\muμ,方差为σ\sigmaσ的分布。根据中心极限定理,是可以通过抽样估算总体的参数的,而且抽样次数越多,对总体的估计就越准确。…...
vscode与C++安装与使用【不好用来骂我】
网上教程很多,但是都不太好用,这是我垃圾堆里淘金淘出来的教程: 安装软件 安装 Visual Studio Code: 你需要下载并安装 Visual Studio Code,可以在官网下载 https://code.visualstudio.com/download。 安装 C 扩展: 在 Visual S…...
C++11使用多线程(线程池)计算相似度实现性能优化
需求:图像识别中,注册的样本多了会影响计算速度,成为性能瓶颈,其中一个优化方法就是使用多线程。例如,注册了了3000个特征,每个特征4096个float。可以把3000个特征比对放到4个线程中进行计算,然…...
【测绘程序设计】——平面坐标转换
测绘工程中经常遇到平面坐标转换——比如,北京54(或西安80)平面坐标转换成CGCS2000平面坐标、工程独立坐标系平面坐标转换成CGCS2000平面坐标等,常用转换模型包括:①三参数法(2平移+1旋转);②四参数法(赫尔默特法,2平移+1旋转+1尺度);③六参数法(仿射变换法,2平移…...
五子棋的设计与实现
术:Java等摘要:五子棋是一种两人对弈的纯策略型棋类游戏,非常容易上手,老少皆宜。为了更好的推广五子棋,研究简单的人工智能方式,运用Java开发五子棋游戏。主要包含了人机对战,棋盘初始化&#…...
大数据项目软硬件选择
目录 一.技术选型 二.系统数据流程设计 三.框架版本选型 如何选择Apache/CDH/HDP版本...
redis数据结构的适用场景分析
1、String 类型的内存空间消耗问题,以及选择节省内存开销的数据类型的解决方案。 为什么 String 类型内存开销大? 图片 ID 和图片存储对象 ID 都是 10 位数,我们可以用两个 8 字节的 Long 类型表示这两个 ID。因为 8 字节的 Long 类型最大可以…...
同步、异步、全双工、半双工的区别
1、通讯 1.1 并行通讯 定义:一条信息的各位数据被同时传送的通讯方式称为并行通讯; 特点: 各个数据位同时发送,传送速度快、效率高,但有多少数据位就需要多少根数据线,因此传送成本高,并且只…...
ClickHouse 与 Amazon S3 结合?一起来探索其中奥秘
目录ClickHouse 简介ClickHouse 与对象存储ClickHouse 与 S3 结合的三种方法示例参考架构小结参考资料ClickHouse 简介ClickHouse 是一种快速的、开源的、用于联机分析(OLAP)的列式数据库管理系统(DBMS),由俄罗斯的Yan…...
【Spark分布式内存计算框架——Structured Streaming】1. Structured Streaming 概述
前言 Apache Spark在2016年的时候启动了Structured Streaming项目,一个基于Spark SQL的全新流计算引擎Structured Streaming,让用户像编写批处理程序一样简单地编写高性能的流处理程序。 Structured Streaming并不是对Spark Streaming的简单改进…...
【Windows】【Linux】---- Java证书导入
问题: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 无法找到请求目标的有效证书路径 一、Windows—java证书导入 1、下载证书到本地(以下…...
【Linux学习】菜鸟入门——gcc与g++简要使用
一、gcc/g gcc/g是编译器,gcc是GCC(GUN Compiler Collection,GUN编译器集合)中的C编译器;g是GCC中的C编译器。使用g编译文件时会自动链接STL标准库,而gcc不会自动链接STL标准库。下面简单介绍一下Linux环境下(Windows差…...
Cadence Allegro 导出Bill of Material Report详解
⏪《上一篇》 🏡《总目录》 ⏩《下一篇》 目录 1,概述2,Assigned Functions Report作用3,Assigned Functions Report示例4,Assigned Functions Report导出方法4.1,方法14.2,方法2B站关注“硬小二”浏览更多演示视频...
localStorage线上问题的思考
一、背景: localStorage作为HTML5 Web Storage的API之一,使用标准的键值对(Key-Value,简称KV)数据类型主要作用是本地存储。本地存储是指将数据按照键值对的方式保存在客户端计算机中,直到用户或者脚本主动清除数据&a…...
什么是DNS域名解析
什么是DNS域名解析?因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,得到该主机名对应的IP地址的过程叫做域名解析。正向解析:…...
Cadence Allegro 导出Assigned Functions Report详解
⏪《上一篇》 🏡《总目录》 ⏩《下一篇》 目录 1,概述2,Assigned Functions Report作用3,Assigned Functions Report示例4,Assigned Functions Report导出方法4.1,方法14.2,方法2B站关注“硬小二”浏览更多演示视频...
Python中Opencv和PIL.Image读取图片的差异对比
近日,在进行深度学习进行推理的时候,发现不管怎么样都得不出正确的结果,再仔细和正确的代码进行对比了后发现原来是Python中不同的库读取的图片数组是有差异的。 image np.array(Image.open(image_file).convert(RGB)) image cv2.imread(…...
沈阳网站设计外包/活动推广
本课件主要内容包括: HMM,马尔可夫过程,马尔可夫决策过程 非确定的情况 时间差分学习 MDP与RL MDP与强化学习:未来发展方向 关于动物的强化学习? 人类学习的RL模型 大脑的RL理论 时间差ML模型:预测…...
石湾做网站公司/怎么注册自己的网站域名
一、监视内存计数器要监视内存不足的状况,请从以下的对象计数器开始:1.内存信息:Memory\ Available BytesMemory\ Pages/secMemory\ Available Bytes如果您怀疑有内存泄露,请监视 Memory\Available Bytes 和 Memory\ Committed By…...
成都今日各区疫情情况/ seo won
BossAnim 项目地址:Alex-Cin/BossAnim简介:仿 boss 直聘,查看用户头像博客地址 http://www.jianshu.com/p/eadd1a764720BossAnim 博客地址 http://www.jianshu.com/p/eadd1a764720...
网站建设与管理ppt课件百度云盘/百度竞价推广自己可以做吗
大家都有这样的经历: 打开VS--〉新建应用程序(FORM1)--〉往里面挪按钮--〉双击按钮--〉写代码 这看上去那么的自然,简单&#x…...
个人网站建设 免费/google seo怎么优化
在函数调用的执行代码中我们会看到这样一些强制转换:EX(function_state).function (zend_function *) op_array;或者:EG(active_op_array) (zend_op_array *) EX(function_state).function;这些不同结构间的强制转换是如何进行的呢?首先我们…...
河北邢台做移动网站/seo排名赚app官网
前言二叉树遍历是非常经典的算法题,也是二叉树的一道基础算法题。但是在平常的笔试面试中,其出现的频率其实并不是特别的高,我推测是这种题目相对来说比较基础,算是一个基础知识点。比如剑指offer中出现的后序遍历题目,…...