- 博客(49)
- 收藏
- 关注
原创 链表(没做完。。)
BM1 反转链表给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。数据范围: 0≤n≤10000≤n≤1000要求:空间复杂度 O(1)O(1) ,时间复杂度 O(n)O(n)。如当输入链表{1,2,3}时,经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。思路:链表基操,反转就好BM2 链表内指定区间反转。
2023-03-21 10:29:33 240
原创 lc day31
思路:自己有点缕不明白,看了评论区有点明白了。注意考虑当前位置=1、>1、<1三种情况。思路:之前做过一道题是分成3越多越好,这里类似,但要考虑4 的问题。数学问题,今天没有耐心做题。思路:没耐心好好看,改天看。
2023-03-19 13:29:42 80
原创 leetcode day30
思路:这题很简单,直接循环就行。但是评论区说这题被简化了,原题应该考虑大数情况,用字符串形式来解决。思路:刚开始用双重循环作比较,果不其然超时了。其实就是排序问题,计算交换了多少次。
2023-03-18 12:18:42 64
原创 leetcode day29 动态规划
思路:计算f(n,s)=f(n-1,s-1)+f(n-1,s-2)+f(n-1,s-3)+f(n-1,s-4)+f(n-1,s-5)+f(n-1,s-6)思路:dp[i][j]表示以i-1索引结尾的字符串s,是否能以j-1索引结尾的字符串p表示;思路:刚开始总想着由+2、+3、+5构成,不行,其实应该是*2、*3、*5。遍历的时候想清楚出现"*""."的情况。注意循环里不能用if else。空字符可以模式匹配;好难,任重而道远~~
2023-03-17 10:40:33 55
原创 leetcode day28 搜索与回溯
思路:序列化就是回溯算法,中左右,注意返回的是字符串;反序列化就是先把字符串通过“,”分隔开,用到队列建立二叉树。思路:其实还是个回溯算法,就是刚开始没想明白。
2023-03-16 15:26:34 34
原创 leetcode day27 栈与队列
思路:这题主要就是考察基本操作,用一个help辅助队列来存储当前最大值。思路:用循环做超时了。据说是模板题,还是背会吧。(是个滑动窗口的模板题,背会)
2023-03-15 10:26:08 217
原创 leetcode day26 字符串
首先不管哪种情况,都需要有数字出现,没有数字肯定不对;其次对于出现e的情况,接收到e时,前面必定已有数字出现,此时将numFlag重置,意味着接收到e后,如果后面没有数字,也是错误结果。如果以“+/-”开头,注意要对结果加上正负符号,且要注意计算过程中的越界问题;'.'出现的正确情况:只出现一次,且'.'出现的时候e还没出现。‘e’出现的正确情况:只出现一次,且e出现前要有数字出现。'+/-'出现的正确情况:只能在开头,或者紧接着e出现。今天的两道题都是字符串转数字相关的,好麻烦,条件总是考虑不全。
2023-03-14 11:07:14 43
原创 leetcode day24数学&&day25模拟
思路:java一般用双端队列模拟栈的操作。当入栈队列元素和出栈队列元素一样时,执行pop()操作,不一样时执行push()操作。思路:刚开始想到了等差数列的求和公式,但具体不知道怎么应用。看了评论区才明白,用left指示首相,right指示末项,根据sum和target大小关系进行移动。思路:转一圈要进行四个操作:从左往右--由上往下--从右往左--从下往上。用top,bottom,left,right指示上下左右边界,注意越界条件。思路:所有数字均被拆分为2、3,3越多,积越大。
2023-03-13 11:20:57 188
原创 leetcode day23 数学
评论区思路,记录a[i]左侧元素乘积,记录a[i]右侧元素乘积。最终结果为b[i] = left[i] * right[i]思路:先将数组排序,遍历前半段数组。当nums[i]==nums[i+length/2]时,该元素即为所求。思路:刚开始用双重循环,超时了。
2023-03-11 16:20:21 30
原创 leetcode day22 位运算
位运算思路:如果一个数字出现3次,它的二进制每一位也出现的3次。如果把所有的出现三次的数字的二进制表示的每一位都分别加起来,那么每一位都能被3整除。我们把数组中所有的数字的二进制表示的每一位都加起来。如果某一位能被3整除,那么这一位对只出现一次的那个数的这一肯定为0。如果某一位不能被3整除,那么只出现一次的那个数字的该位置一定为1.借评论区大佬答案:nums = [1,2,10,4,1,4,3,3]思路:不用位运算的话挺简单,用位运算没啥思路。
2023-03-10 15:30:49 411
原创 2021-04-07
Vue入门文章目录 目录 一、基础 二、一些指令 1.v-text 2.v-html 3.v-on 4.v-show 5.v-if指令 6.v-bind 7.v-for 8. v-model 9. axios(功能强大的网络数据库) 前言一些简单的指令。希望今天的学习是个良好的开端,以后多多学习!一、基础导入开发版本的Vue.js 创建Vue实例对象,设置el和data属性(methods) 使用简洁的模板语法把数据...
2021-04-07 17:49:39 80
原创 java--多线程总结
多线程:一个应用程序有多条执行路径。 进程:正在执行的应用程序。 线程:进程的执行单元,执行路径。 单线程:一个应用程序只有一条执行路径。 多线程:一个应用程序有多条执行路径。 多进程的意义? 提高CPU的使用率。 多线程的意义? 提高应用程序的使用率。 Java程序的运行原理及JVM的启动是多线程的吗? A:Java命令去启动JVM,JVM会启动一个进程,该进程会启动一个主线程。...
2018-08-11 10:52:40 97
原创 java--IO总结
IO流IO用于在设备间进行数据传输的操作。 分类: A.按流向:输入流(读取数据);输出流(写出数据) B.按数据类型:字节流(字节输入流;字节输出流);字符流(字符输入流;字符输出流)注:如果我们没有明确说明按照什么分,默认按照数据类型分;除非文件用windows自带的记事本打开我们能够读懂,才采 用字符流,否则建议使用字节流 FileOutputStream写出数...
2018-08-11 10:45:23 89
原创 Android小项目--Suzy计算器
一.前提准备在Android Studio下新建一个项目并全部选择默认 对Android界面和布局有一定了解;对Android活动有一些了解 对Java基础知识有一些了解 掌握中缀表达式转后缀表达式,以及对后缀表达式求值算法二.实现效果 整数和浮点数的加减乘除运算 可以加括号 可以实现大数的计算 部分截图 三.界面编写我使...
2018-08-04 10:38:49 291
原创 Java总结--异常
异常:程序出现的不正常情况。 异常的体系: Throwable |--Error 严重问题,我们不处理。 |--Exception |--RuntimeException 运行期异常,我们需要修正代码 |--非RuntimeException 编译...
2018-08-04 08:47:30 96
原创 java总结--几个知识点
泛型概述:是一种把明确类型的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型。 格式:<数据类型> 注意:该数据类型只能是引用类型。 好处: A.把运行时期的问题提前到了编译期间 B.避免了强制类型转换 C.优化了程序设计,解决了黄色警告线问题,让程序更安全 泛型的前世今生 A.泛型的由来:Object类型作为任意类型的时候,在向下转型的时候,会隐含一个转型...
2018-07-27 21:59:38 408
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人