- 博客(33)
- 收藏
- 关注
原创 python 字符串操作
python语言为字符串对象提供了大量的内置方法用于字符串的查找、替换、分隔、拼接和排版等操作。使用时需注意的是,字符串对象是不可变的,所以字符串对象提供的涉及字符串“修改”的方法都将返回修改之后的新字符串,而不会对原字符串做任何修改。它这个默认顺序是第几个在这个位置输出。这个是在说 一共有几个字符。
2023-04-30 20:21:54
159
原创 这些是什么?---困难
题目的难度让我望而止步,就算ac也是cv的感觉太不好了。我快要陷入这没有尽头的深度 无法走出。我选择去一个简单的题目,不再有很多的哈希表可以吗?等到 5月或者我学完python,或许我可以再战!我会回来的,现在只不过不是时候。不是我不更新算法了,是它有点难而我做不出来。
2023-04-26 19:17:11
141
原创 leetcode 763 划分字母区间
2、对于当前的片段来说,其末尾值一定不会小于当下遍历的字母的最后的位置,所以end == max(end,last),在第一个元素c的end之前(endc),遍历每一个元素看看它的end是不是在现在的endc中间,如果最后一个元素就是end的元素,那么分割完成。3、 当访问到 end后,该片段结束,运用到贪心算法,即局部最优。1、需要遍历一边数组,维护当前片段的开始下标和结束下标。
2023-04-25 19:45:23
141
原创 4.3 字典
字典属于,字典中的每个元素都是“键:值”,且要满足:1、键与值用 冒号 分隔,而元素之间用逗号分隔,所有这些在大括号内。2、键必须是唯一的,同一个键不允许重复出现,若出现两次后一次将覆盖前一次。3、键必须不可变,只能用数字、字符串或元组充当,不可以用列表充当。(其键的定义与数据库中主键的定义大相径庭)
2023-04-24 14:33:53
117
原创 leetcode 最长回文串
这个技巧应该要学习的,用数组去统计每个字母出现的次数,现在的内存已经很大了,52个大小的数组是能够很方便的提供的。(其实也不是很难,但是我一开始没有想到用数组去统计每一个,我一开始想的是只用一个tmp来记录,但是每个字母需要判断,我当时一时就没有想出来)这道题目虽然很好想到偶数于奇数的关系,但是怎么判断到底有多少个a,多少个b又是一个小的困难的地方,昨天做题的时候我没有继续深想,我去看了题解做出的。
2023-04-24 13:38:52
90
原创 leetcode 除自身以外的数组的乘积
这道题目我一开始给了个累成器,但其实是不需要的,它是和前一项的关系,在看来两三个大佬的代码后我改过了。其他就没有什么问题了,这个问题比较巧妙的是用了两个数组来存放左边和右边的乘积再相乘计算。ans是指向这个片内存的初始地址(这个是借用了同学的回答)一开始的这一行申请空间的代码我写的还不熟练。
2023-04-22 19:09:27
56
原创 leetcode 探索二维矩阵
一开始地时候做错了,准确地说是没有读好题目,这里不是方阵。如果是方阵就简单的多。当我兴致勃勃地做完这道题目后,时间已经过了45min。最后看了大佬的题解,从右上往下就是递增,往左就是递减,真不错。
2023-04-21 20:11:02
54
原创 leetcode 旋转矩阵
很巧妙,而且是二维数组来的,先上下翻转,再沿着对角线翻转,我写的好像可读性很差,因为官方不是这样写的,官方的看起来很高级,哈哈哈哈。我应该习惯写函数,习惯调用,这样写很多代码的时候才会比较好检查。下面贴官方的代码,给个注释,不保证注释的正确。
2023-04-20 17:02:26
73
原创 python 第三章 程序控制结构
它的赋值和一些函数还是很方便的,虽然用造轮子这样非常有成就感,而且小一点的代码或者更加创新的东西大概都是从c语言来的吧,但是当函数越来越多,每一个都要你亲历亲为的时候,你是否会感疲惫呢。(中间有几个易犯错的点在这里就不一一描写了,中间犯错误的过程可能是由于计算机的精度导致的直接等于是不行的,你需要判断小于多少的时候可以执行。的意思,如果种子确定了,那么它的随机数就会是一样的。编写程序,计算s = a + aa + aaa + aaaa ,输入为n,a,输出为和。下面看一道题目,两枚骰子,和为7的概率。
2023-04-19 14:15:02
128
原创 写栈的题目 leetcode 有效的括号
如果用python就有直接的函数用压栈、出站,但是c要你自己写的。终于能把这篇文章发出来了,以下是栈的一些实现。写了一个括号匹配的问题,典型的栈。emmm,但是我写的也不好。
2023-04-18 22:00:06
61
原创 leetcode 多数元素
突然想起来听一个b站上的老师讲操作系统的时候,他用了一个图来讲述以后遇到(我忘记那个类型叫什么了,但是我记得那个图)这类问题,就用那个图,那个图是万能的办法。昨天又有同学说到哈希表的图接口实现,会不会有关系呢,可能是有的,但是我还没有了解。用两个for就要o(n^2),想要提高效率就要明白其中的道道,哎呀,有点力不从心,主要是一直碰壁哈哈哈哈。言归正传,下面的这个算法很巧妙,真的很想知道他们到底是怎么想出来了,大脑的结构不都是一样的吗。下面是超时的代码,我现在好像还是只能想到这个。
2023-04-18 13:16:07
89
原创 python 第二章基本数据类型与表达式
比C多了complex 复数的数值类型dict二进制类型bytes等这个我应该还用不到下面是这些类型的简单应用代码:在列表中元素的数据类型可以不同,列表中的元素可以改变。和列表类似但是元素不能改变(那么为什么要存在这种数据类型,不是有比它看起来更好的列表在了吗)和数学中的集合的概念类似,集合中的元素不可以重复并且数据类型不变字典是一种映射类型,元素的形式是“键-值”,键的数据类型要相同,可以通过键来访问元素,字典中的元素是无序的,但在同一个字典中,键必须是唯一的。我太容易手滑哈哈哈哈,打的不太好。
2023-04-17 21:21:37
79
原创 做了一个自己找错的题目
但今天做了一个自己找错的题目,其实就是在很多地方插入printf,哈哈哈哈,这个办法很好用!今天找不到昨天做的那个题目实在那个地方了,认真找了。题目如下,用了两个循环。
2023-04-17 13:36:45
75
原创 开始简单学习python
这一个月估计是自己接触到语言最多的一个月,但是这不会让我觉得疲惫,相反我会有点开心。用到的教辅书是清华大学的一本紫色的书,自己当时翻了两页感觉还行,我看书有的时候凭运气嘿嘿。python集成开发环境;python常用的有两种方式:交互方式、文件方式。下面就是熟悉的helloword环节为什么会选择学python呢,其实很早之前就学了一点点了,因为很强大的库。。还能用这种方式来运行第一次见 哈哈哈哈。在函数定义、类定义、选择结构、循环结构、异常处理和with语句等结构中,行尾的冒号代表缩进开始。
2023-04-16 15:25:36
131
原创 leetcode第二题 两数之和
对了,一开始还不会输出两个,我知道是个数组来的,我一开始以为那个返回值是 returnSzie,看来还是自己太菜了。这道题目尽然还能用哈希表!但人类的本质是懒惰的,另外一种做法,就放到明天吧哈哈哈哈哈。这次没有超时但我知道这个方法肯定是最慢的。malloc那句不够熟练,是cv的。
2023-04-15 22:58:18
98
原创 leetcode 数据结构第一题
最后用来哈希表,在王道书里面没有这一块的代码,理论知识好像自己学的还可以但是代码是 cv的,我来分析一下代码吧,不难但是需要我来看看有几个函数是怎么实现的。采用宏的方式实现hash函数的相关功能。(好好奇怎么宏还这么厉害的,不就是个定义方式吗!Uthash是c的比较优秀的源代码,它实现了常见的hash操作函数,查找、插入、删除等。好的,如果是这样完成的,那么我知道的少了,所以才会什么都想自己做。冒泡外面写的是趟数,里面是排序,小心边界。开始些了第一个数据结构的题目,毫无疑问的 时间超时了;
2023-04-14 21:38:52
65
原创 Linux再次用到的时候,我会学习的更深入的
学习计算机是开心的,这和学数学的感觉不一样。但无论自己的感觉,考研它是一场考试,我必须按照考试去准备它,这一次希望自己能赢。我必须知道自己的目标就只有上岸,自己花费时间和精力下去自己或许能够学的比较好,但对于考研的帮助或许就没有那么多了。我已经看到了Linux的精彩之处,若日后需要用到并且对Linux有了更大的兴趣,自己一定会完成这部分内容的学习。从第五章开始往后涉及到的内容对于现阶段的自己来说,有点深奥效益也没有那么大了。
2023-04-13 18:54:08
63
原创 用户身份与文件权限
先简述一下第五章的内容1、用户的身份与能力2、文件的权限与归属3、文件的特殊权限4、文件的隐藏功能5、文件访问控制列表6、su命令与sudo服务这一节开始自己就用模板了,这样是的自己看起来也会比较方便。后面的几章学习的可能没有前面细致了,毕竟学习Linux只是为了帮助学习。前言一、二、总结。
2023-04-13 17:35:56
129
原创 Vim编辑器与Shell命令脚本
还有一点值得注意的是如果你在退出Linux系统时,先用了shutdown 又用了 poweroff 那么在你输入密码进入的时候需要两次,大概一次是开启电脑,一次是打开Linux系统。(我去上网搜了,大拿太奇怪就没有放置,用一下ai的回答吧)(似乎没有这个问题的解答,也或许我的理解是错误的,又或许我可以自己查看内存的变化放在下一节吧)(由于这几种语句和c语言几乎一样的理论,所以我就没有再单独解释了,直接看代码应该也可以看懂的)它的语法【for-do-done】理论和c语言相似,用以下一个实验来介绍它的编写。
2023-04-12 19:12:14
217
原创 计划任务服务程序
以下实验在每周一、三、五的凌晨3点25分,都需要使用tar命令把某个网站的数据目录进行打包处理,使其作为一个备份文件。下面这个实验将前面学到的管道符放到两条命令之间,让at命令接受前面echo命令的输出信息,达到非交互式的方式。linux中crond服务用来周期性的、有规律性的执行某些特定的任务。下面的实验是每周一至周五的凌晨1点钟自动清空/tmp目录内的所有文件。,将周期性、规律性的工作交给系统完成。计划任务分为:一次性任务和长期性任务。查看已经设置好,但未执行的任务。,从而实现运维的自动化。
2023-04-12 15:13:36
429
原创 Vim编辑器与Shell命令脚本
shell脚本中的条件测试语法可以判断表达时是否成立,若条件成立则返回0,否则返回其他随机数值。用整数运算符来判断内存可用量的值是否小于1024,若小于则会提示“insufficient memory”(内存不足)的字样。再增添逻辑运算符,当用于保存当前语系的LANG不是英语(en.US)时,则输出"Not en.US"(非英语)的字样。(判断用户指定的文件夹是否存在,若存在则提示报错,若不存在则自动创立)逻辑运算符这里和c是一样的,下面这个例子如果会判断&&和||的优先级是很好做出最后的结果的。
2023-04-11 16:09:10
701
原创 Vim编辑器与Shell命令脚本
Vim编辑器中设置了三种模式——命令模式、末行模式和编辑模式。解释三种模式:命令模式:控制光标移动,可以对文本进行复制、粘贴、删除和查找等工作。输入模式:正常的文本录入。末行模式:保存或退出文档,以及设置编辑环境。三种模式之间的转换:命令模式--->输入模式 a、i、o等键输入模式--->命令模式 esc 键 末行模式相同命令模式--->末行模式 : 键注意无法直接从输入模式到末行模式以下实验编写脚本文件,给,实验结果如下图所示:中间省略了一点在编辑器里面的内容。
2023-04-10 18:05:39
533
原创 管道符、重定向与环境变量
开启第三章的内容啦,先梳理一下这章的主要内容。输入输出重定向:把文件导入到命令中;管道命令符;命令行的通配符;常用的转义字符;重要的环境变量;
2023-04-08 20:25:18
64
原创 新手必须掌握的Linux命令(最后一节!)
Linux系统中一切都是文件,在Linux中搜索工作一般是find命令来完成的,它可以使用不同的文件特性作为寻找的条件(如文件名、大小、修改时间、权限等信息),find命令的参数以及作用如下图所示。-n参数用来显示搜索到信息的行号,-v用来反选信息(即没有包含关键词的所有信息行)-f参数很重要,它必须放到参数的最后一位,代表要压缩或解压的软件名称。这个是运行结果,我的命令是倒着输入的,我找不到原来的命令在哪里了。这个结果和上图一样,它的运行结果太多了,我找不到。用于在文本中执行关键词搜索,并显示匹配结果。
2023-04-07 19:49:45
49
原创 新手必须掌握的Linux命令
Linux系统中有一个/dev/zero的设备文件,这个文件不会占用系统存储空间,但却可以提供无穷无尽的数据,因此可以让它做为dd命令的输入文件,来生成一个指定大小的文件。,在Linux中,由于文本、目录、设备等所有这些一切都统称为文件,而我们又不能够只凭后缀就知道文件的类型,这时就要file命令来查看文件的类型了。先使用ls命令查看一个文件的修改时间,然后修改这个文件,最后再通过touch命令把修改后的文件时间设置成修改之前的时间。剪切操作不同与复制操作,因为它会默认把源文件删除掉,只保留剪切后的文件。
2023-04-07 14:09:31
55
原创 新手必须掌握的Linux命令
etc是用来寄存系统首要的配置文件,例如人员的账号密码文件、各种服务的开始文件等。一般来说,这个目录下的各文件特点是能够让一般用户用户查阅的,但是只要root有权力修正。学完这两节,有一些简单的命令需要记住的,ls,cd,cat,sudo -s,su +用户名,强制终止,关机等命令都需要我记得,这样才能够更加熟练的掌握。ls有 -a 可以看到全部的文件(包括隐藏文件),-l可以到文件的属性、大小、等详细信息,若下图所示,若查看目录的属性信息则需要额外添加一个-d参数。用于查看纯文本文件(内容较少的)
2023-04-07 08:42:23
106
1
原创 新手必须掌握的Linux命令(2)
(可以显示最近1000条命令记录,如果觉得1000条不够用,还可以自定义/etc/profile文件中的HISTSIZE变量值)括号里的内容我还不能理解,我还不知道怎么使用指令打开一个文件,估计要等到我能够打开文件后才可以知道括号里的内容。这次我没有实验成功,我一开始 以为我打错了,检查过一遍发现没有,后来以为我清空了,这个文件也没有了(现在想想不可能的)就加了一个who的指令发现还是不行,这个错误就先在这里搁置了,或许是因为自己真的没有这个文件。编码数字‘的方式来重复执行某一次的命令,如图所示。
2023-04-06 13:00:02
104
1
原创 在VM组装Linux
通过虚拟机软件安装的系统不仅可以模拟出硬件资源,把实验环境与真机文件分离保证数据安全,更酷的是当操作失误或配置有误导致系统异常的时候,可以快速把操作系统还原出错前的环境状态,进而减少重装系统等待的时间。VM的虚拟机的强大之处在于不仅可以调取真实的物理设备资源,还可以模拟出网卡或者硬盘等资源,完全可以满足大家对学习环境的需求。在简单调试了一些命令后,有点累,就在此写笔记,下个笔记的内容就是关于Linux的内容啦!linux的多种安装方式: 光驱安装 U盘安装 硬盘安装。linux环境下的网络基本组建。
2023-04-05 08:45:26
181
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人