随笔分类 - 算法与数据机构
摘要:python 位运算 python 位运算是对整数在二进制级别进行的操作 运算符 名称 描述 示例 & 按位与 两位都为1时结果为1 5 & 3 -> 1 | 按位或 两位至少一个为 1 时结果为1 5 | 3 --> 7 ^ 按位异或 两位不同时结果为1 5 ^3 --> 6 ~ 按位取反 每一位
阅读全文
摘要:描述 zip() 是Python 中的一个实用的内置函数,它就像一个拉链, 可以将多个可迭代对象(列表,元组)中对应的元素‘拉’在一起,生成一个新的迭代器 基本语法 zip(*iterables) iterables: 一个或多个可迭代对象(列表,元组,字符串) 返回值:一个迭代器(zip 对象),
阅读全文
摘要:问题 在编程中python 字符替换和删除是常见的操作,熟悉掌握操作字符串还是很有必要的 str.maketrans() 是 Python 中一个非常实用的字符串方法,它通常与 translate() 方法配合使用,用于高效地执行字符的替换或删除操作 简单来说 maketrans() 负责制定规则(
阅读全文
摘要:题目描述 给定一个列表,对列表元素进行全排列,使得生成一个包含列表的列表,且全排列不能重复,例子: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 实现方式 使用python 自带的itertools.pe
阅读全文
摘要:##赋值、浅拷贝、深拷贝的区别 前提知识 要想弄请赋值、浅拷贝、深拷贝的区别,首先要知道栈内存和堆内存 堆内存(heap):保存每一个对象的属性内容,堆内存需要用关键字new才可以开辟,如果一个对象没有对应的堆内存指向,将无法使用。 栈内存(stack):保存的是一块堆内存的地址数值,可以把它想象成
阅读全文
摘要:面试题 08.08. 有重复字符串的排列组合
阅读全文
摘要:题目描述 给你一个文本串 T ,一个非空模板串 S ,问 S 在 T 中出现了多少次 数据范围:1≤len(S)≤500000,1≤len(T)≤1000000 要求:空间复杂度O(len(S)),时间复杂度O(len(S)+len(T)) ##解题思路和代码 class Solution: def
阅读全文
摘要:1839. 所有元音按顺序排布的最长子字符串
阅读全文
摘要:HJ101 输入整型数组和排序标识,对其元素按照升序或降序进行排序
阅读全文
摘要:整数和ip地址的转化,要注意其他进制转化为2进制时有2个字符的前缀
阅读全文
摘要:使用python解决 HJ20 密码验证合格程序
阅读全文
摘要:题目描述 开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。 输入: 合法坐标为A(或者D或者W或者S) + 数字(两位以内) 坐标之间以;分隔。 非法坐标点需要进行丢弃。
阅读全文
摘要:题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 数据范围:1≤n≤40 要求:时间复杂度:O(n) ,空间复杂度: O(1) 自己做法与思路 """ 由于这个题不是常规问题,所以需要先找规律,发现从0开始,第0项是
阅读全文
摘要:题目描述 编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次 例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3 数据范围:
阅读全文
摘要:题目描述 明明生成了NN个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。 数据范围: 1≤n≤1000,输入的数字大小满足 1≤val≤500 输入描述 第一行先输入随机整数的个数 N 。 接下来的 N
阅读全文
摘要:题目描述 给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列。 (注:返回的数组下标从1开始算起,保证target一定可以由数组里面2个数字相加得到) 要求:空间复杂度 O(n),时间复杂度 O(nlogn) 错误代码和思
阅读全文

浙公网安备 33010602011771号