s1

C语言:关于字符串操作感悟

折月煮酒 提交于 2019-12-15 19:37:31
由于C没有像C++或者Java或者。。。的各种花样繁多的字符串操作函数。而仅有屈指可数的几种函数: 函数名 功能 strlen(s1) 返回字符串s1长度, 而非这个变量占用空间的大小,那个是sizeof() ) strcpy(s1,s2) 复制字符串 s2 到字符串 s1 strcat(s1, s2); 连接字符串 s2 到字符串 s1 的末尾 其他的函数先暂时用不到,用到再议。 现在要补充的是: (其他的想到会慢慢补充~0v0) 函数名 功能 p=add_char(str1,c) 在字符串s1末尾加字符c,返回结果的指针 p=add_str(str1,str2) 拼接字符串s1与s2,返回结果的指针 对于表1第一行的代码解释: # include <stdlib.h> # include <stdio.h> # include <string.h> int main ( ) { char a [ 10 ] = "123" ; printf ( "strlen:%d\n" , strlen ( a ) ) ; printf ( "sizeof:%d\n" , sizeof ( a ) ) ; system ( "pause" ) ; } 输出: 然后就来写一些替代函数啦~ 1.在字符串末尾添加字符 char * add_char ( char * s , char c ) {

python集合

痴心易碎 提交于 2019-12-13 04:42:06
文章目录 1.集合 2.练习 3.python交集差集 4.可变和不可变 6.类型转换 1.集合 # 不重复特点 list1 = [ 3 , 5 , 8 , 9 , 1 , 8 , 4 , 2 , 5 , 8 , 9 ] #声明集合:set s1 = set ( ) s2 = { } #字典:{key:value,key:value,.....} 集合{元素1,元素2,元素3,.......} print ( type ( s1 ) ) #<class 'set'> print ( type ( s2 ) ) #<class 'dict'> #应用 s3 = set ( list1 ) print ( s3 ) #增删改查 #1.增加 s1 = set() s1 . add ( 'hello' ) s1 . add ( '小猪佩奇' ) s1 . add ( 'lucy' ) print ( s1 ) #add() 添加一个元素 #update() t1 = ( '林志玲' , '言承旭' ) s1 . update ( t1 ) #{'lucy', '小猪佩奇', '言承旭', '林志玲', 'hello'} print ( s1 ) s1 . add ( t1 ) print ( s1 ) #2.删除 remove 如果元素存在则删除,不存在则报错keyError pop

字符串的排列 LeetCode 567 JAVA

谁都会走 提交于 2019-12-11 14:33:17
题目连接:https://leetcode-cn.com/problems/permutation-in-string/ 思路: 因为所有字符都是小写,可以用数组保存 s1 串 每个字符出现的次数。 然后在 s2 串中去找出长度为 s1.length() 的子串,再去判断这些子串有没有和 s1 是一样长度的。 代码 class Solution { public boolean checkInclusion(String s1, String s2) { if(s1.length() > s2.length()) return false; int s1map[] = new int[26]; int s2map[] = new int[26]; for(int i = 0; i < s1.length(); i++){ s1map[s1.charAt(i) - 'a']++; s2map[s2.charAt(i) - 'a']++; } for(int i = 0; i < s2.length() - s1.length(); i++){ if(check(s1map,s2map) == true) return true; s2map[s2.charAt(i) - 'a']--; s2map[s2.charAt(i + s1.length()) - 'a']++; }

python中的集合

此生再无相见时 提交于 2019-12-10 22:17:29
集合定义 set():是一个无序不重复元素序列可以使用{}或者set()来创建集合 创建空的集合必须使用set(),因为{}是用来创建一个新的字典 创建 s = { 1,2,3,2,3,4 } print ( s ) print ( type ( s )) #打印结果 { 1, 2, 3, 4 } #去掉重复的数字 < class 'set' > #类型为set集合 for循环,成员操作 s = { 1,2,3 } print ( 1 in s ) print ( 1 not in s ) for i in s: print ( i,end = '' ) print ( ) #打印结果 True False 123 枚举 s = { 1,2,3 } for i,v in enumerate ( s ) : print ( 'index: %s,value: %s' % ( i,v )) #打印结果 index: 0,value: 1 index: 1,value: 2 index: 2,value: 3 添加 ** 集合是一个可变的数据类型 添加顺序和在集合中存储的顺序不同** s = { 6, 7, 8, 9, 1, 2, 3 } print ( s ) s.add ( 10 ) s.add ( 0 ) print ( s ) #打印结果 { 1, 2, 3, 6, 7, 8,

jQuery - 选择器

故事扮演 提交于 2019-12-10 13:14:13
1. 基本选择器 // 标签选择器 : 所有标签为td的元素 console.log($("td")); // ID选择器 : ID为td1的元素 console.log($("#td1")); // 类选择器 console.log($(".txtColor")); // 所有class属性值为txtColor的元素 console.log($("td.txtColor")); // 所有td元素中, class值为txtColor的元素 // 通配选择器 : 所有元素 console.log($("*")); // 并集选择器 : 选择所有tr和td元素 console.log($("tr,td")); // 后代选择器 : body标签下所有子标签是span标签的元素 (包含孙子) console.log($("body span")); // 父子选择器 : body标签下所有子标签是span标签的元素 (不包含孙子) console.log($("body>span")); // 后面第一个兄弟元素 : 选择id为#tr1的元素的下一个tr元素 console.log($("#tr1+tr")); // 后面所有兄弟元素 : 选择id为#tr1的元素后面所有的兄弟级tr元素 console.log($("#tr1~tr")); <style> .txtColor {

数据结构——串

夙愿已清 提交于 2019-12-10 05:19:20
数据结构——串(知识点整理) 1.串类型的定义 1.串(或字符串)是由零个或多个字符组成的有限序列 2.C语言中处理串的两种方法:字符数组和字符指针 3. 空串 是长度为零的串,而 空格串 是一个或多个空格组成的串 4. 串中任意个 连续 子序列称为该串的子串,空串是任意串的子串,而任意串是其自身的子串 5. 串相等 :长度相等、对应位置的字符相等 6. 串与一般线性表的区别: ①串的数据对象约束为字符集 ②线性表大多以‘单个元素’为操作对象,而串通常以‘串的整体或串的一部分’为操作对象 7.串的抽象数据类型定义 2.串的表示和实现 1. 定长顺序存储 :用一组地址连续的存储单元存储串值的字符序列 C语言中以’\0’表示串值的终结,此时串长为隐含值,不便于操作 //串的定长顺序存储表示 # define MAXSTRLEN 255 typedef unsigned char SString [ MAXSTRLEN + 1 ] ; //0号单元存放串的长度 串联接的算法 Status Contat ( SString & T , SString S1 , SString S2 ) { //用T返回由S1和S2联接而成的新串,若未截断,返回TRUE,否则返回FALSE if ( S1 [ 0 ] ) + S2 [ 0 ] <= MAXSTRLEN ) { //未截断 T [ 1. .

ACPI电源管理中的S0 S1 S2 S3 S4 S5

青春壹個敷衍的年華 提交于 2019-12-09 12:08:31
以 ACPI 的规格来说吧!ACPI(Advanced Configuration and Power Interface),即高级配置与电源接口。这种新的能源管理可以通过诸如软件控制"开关"系统,亦可以用Modem信号唤醒和关闭系统。   ACPI在运行中有以下几种模式:   S0 正常。   S1 CPU停止工作。唤醒时间:0秒。   S2 CPU关闭。唤醒时间:0.1秒。   S3 除了内存外的部件都停止工作。唤醒时间:0.5秒。   S4 内存信息写入硬盘,所有部件停止工作。唤醒时间:30秒。(休眠状态)   S5 关闭。 S1 =>Standby。即指说系统处于低电源供应状态,在 windows or BIOS 中可设定萤幕讯号输出关闭、 硬碟停止运转进入待命状态、电源灯号处于闪烁状态。此时动一动滑鼠、按键盘任一键均可叫醒电脑。 S2 =>Power Standby。和 S1 几乎是一样。 S3 =>Suspend to RAM。即是把 windows 现在存在记忆体中的所有资料保存不动,然后进入「假关机」。此时除了记忆体需要电源来保持资料以外,其它的设备、装置全部停止供电。也就是说,理论上可以把 CPU, PCI, AGP device 拿掉又插回去,电脑也可能正常完成开机及运作,只要不动到记忆体和电源的部份。这时只剩下电源灯号一闪一闪的,其它和关机没什么两样。

C语言中#和##运算符使用分析

纵饮孤独 提交于 2019-12-06 10:18:28
# 运算符 # 运算符用于在预处理期将 宏参数转换为字符串 # 的转换作用是在预处理期完成的,因此 只在宏定义中有效 编译器不知道 # 的转换作用 1 #define STRING(x) #x2 printf("%s\n",STRING(Hello World!)); ## 运算符 ## 运算符用于在预处理期粘连两个标识符 ## 的连接作用是在预处理期完成的,因此 只在宏定义中有效 编译器不知道 ## 的连接作用 1 #include<stdio.h> 2 #define STRUCT(type) typedef struct _tag_##type type;\ 3 struct _tag_##type 4 STRUCT(Student) 5 { 6 char *name; 7 int id; 8 } 9 10 int main() 11 { 12 Student s1; 13 Student s2; 14 s1.name = "s1"; 15 s1.id = 0; 16 s2.name="s2"; 17 s2.id = 1; 18 printf("s1.name = %s\n",s1.name); 19 printf("s1.id = %d\n",s1.id); 20 printf("s2.name = %s\n",s2.name); 21 printf("s2.id = %d

2019/11/28

守給你的承諾、 提交于 2019-12-06 00:48:26
今天解决问题: 1.java反射机制: 反射是java语言的一种特性,它允程序在运行时(注意不是编译的时候)来进行自我检查并且对内部的成员进行操作。 在你new一个对象时,jvm会从你的本地磁盘中找到你的.class文件,随着文件一起的就是class文件中的所有属性,譬如Student stu = new Student() ; jvm从本地磁盘获取Student.class文件进行解析获取全部的属性,并且无论在你定义Student类时设置的什么属性,都可以在这个class对象中进行修改,final等关键字在这个class文件中没有任何作用。SpringBoot框架的ioc容器就是使用的反射机制,获取你的对象。 2.牛客试题广场 字符串反转以及找到字符串的旋转子串 字符串反转:室友头条面试一面原题:给定字符串和指定index,将包括index以前的字符反转到后面 1 string b=A+A; 2 string a=b.substr(p+1,n); 3 return a; 类似于旋转子串: 给定字符串S1和字符串s2,判断s2是不是s1的旋转子串 1 public boolean checkReverseEqual(String s1, String s2) { 2 // write code here 3 int lens1=s1.length(); 4 int lens2=s2

python-5-str常用操作

半腔热情 提交于 2019-12-05 17:51:22
前言 本节将讲解的是字符串 str 常用的操作方法,与 for 循环。 一、srt 常用操作 1、首个字母大写: # 1、首个字母大写 s = 'xiao long' s1 = s.capitalize() print(s1) 2、全大写、全小写: # 2、全大写、全小写 s = 'xiao long' s2 = s.upper() s21 = s.lower() print(s2) print(s21) 3、不区分大小写的写法: # 3、不区分大小写写法 s = 'xiao long' s_str = 'ABcd' p = input('请输入验证码,不区分大小写:') if s_str.upper() == s_str.upper(): print('验证码正确!') else: print('验证码错误,请重新输入') 4、大小写对换,如A换为a,b换为B: # 4、大小写对换,如A换为a,b换为B s = 'Ab' s3 = s.swapcase() print(s3) 5、有间隔(特殊字符或数字隔开)的首字母大写: # 5、有间隔(特殊字符或数字隔开)的首字母大写 s = 'xiao long' s4 = s.title() print(s4) 6、居中,空白填充: # 6、居中,空白填充 s = 'xiao long' s5 = s.center(20, '-')