自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 [easy]赎金信

给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成。如果可以构成,返回 true ;否则返回 false。(题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。杂志字符串中的每个字符只能在赎金信字符串中使用一次。)分别求magazine和ransom中字母出现的频率若ransom中某个字母出现的频率比magazine中对应字母出现的频率大,则返回false

2021-11-10 21:15:23 63

原创 [easy]字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。在第一次遍历时,我们使用哈希映射统计出字符串中每个字符出现的次数。在第二次遍历时,我们只要遍历到了一个只出现一次的字符,那么就返回它的索引,否则在遍历结束后返回 -1。class Solution { public int firstUniqChar(String s) { Map<Character,Integer> fre = new HashMap<Character,

2021-11-09 23:04:49 57

原创 [easy]重塑矩阵

在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 r 和 c ,分别表示想要的重构的矩阵的行数和列数。重构后的矩阵需要将原始矩阵的所有元素以相同的 行遍历顺序 填充。如果具有给定参数的 reshape 操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。mat拉直赋值给新数组class Solution {

2021-11-08 23:36:26 59

原创 [medium]无重复字符的最长子串

给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。提交1 解答错误不满足s = “pwwkew” ,return 3;class Solution { publ

2021-10-28 22:28:10 56

原创 [easy]买卖股票最佳时间

给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。1.暴力解法——超时class Solution { public int maxProfit(int[] prices) { int ans = 0;

2021-10-27 23:42:35 38

原创 [easy]求两个函数交集

给定两个数组,编写一个函数来计算它们的交集输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]分别对两个数组排序建新数组,长度为min(nums1.length,nums2.length)。将所求元素放在新数组中(双指针),求交集长度复制有效数组并返回class Solution { public int[] intersect(int[] nums1, int[] nums2) { int len1 = nums1.length

2021-10-27 23:12:27 385

原创 [easy]合并有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]解释:需要合并 [1,2,3] 和 [2,5,6] 。合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums

2021-10-27 23:05:05 37

原创 [easy]最大子序列和

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和1.动态规划class Solution { public int maxSubArray(int[] nums) { int pre = 0; int ans = nums[0]; for(int i=0;i<nums.length;i++){ pre = Math.max(nums[i],pre+nums[i]);

2021-10-27 23:00:59 46

原创 [medium]删除链表的倒数第 N 个结点

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?在对链表进行操作时,一种常用的技巧是添加一个哑节点(dummy node),它的 next 指针指向链表的头节点。这样一来,我们就不需要对头节点进行特殊的判断了。例如,在本题中,如果我们要删除节点 y,我们需要知道节点 y 的前驱节点 xx,并将 x 的指针指向 y 的后继节点。但由于头节点不存在前驱节点,因此我们需要在删除头节点时进行特殊判断。但如果我们添加了哑节点,那么头节点的前驱节点就是哑节点本

2021-10-25 23:53:13 57

原创 [easy]爬楼梯

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。暴力递归——果然超时class Solution { public int climbStairs(int n) { if(n==1){ return 1; } if(n==2){ return 2; } return c

2021-10-25 12:35:47 43

原创 [easy]链表的中间结点

给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。经典快慢指针/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int va

2021-10-25 12:19:36 44

原创 [easy]反转字符串中的单词 III

给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例:输入:“Let’s take LeetCode contest”输出:“s’teL ekat edoCteeL tsetnoc”提示:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。救命!没有比我这解法更恶心了吧class Solution { public String reverseWords(String s) { String[] str_arr = s.s

2021-10-19 23:16:42 56

原创 [easy]反转字符串

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。双指针指头尾,交换顺序class Solution { public void reverseString(char[] s) { int left=0;int right = s.length-1; while(left<right){ char temp =

2021-10-17 23:32:40 93

原创 [easy]两数之和

给定一个已按照 非递减顺序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 1 开始计数 ,所以答案数组应当满足 1 <= answer[0] < answer[1] <= numbers.length 。你可以假设每个输入 只对应唯一的答案 ,而且你不可以重复使用相同的元素。输入:numbers = [2,7,11,15], target =

2021-10-17 20:43:55 40

原创 [easy]移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:1.必须在原数组上操作,不能拷贝额外的数组。2.尽量减少操作次数。双指针i,j遍历1:用j记录一共有多少非零元素;遍历2:从第j个元素后,均为0class Solution { public void moveZeroes(int[] nums) { int j=0; for(

2021-10-17 20:37:12 31

原创 [medium]旋转数组

给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。进阶:尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。你可以使用空间复杂度为 O(1) 的 原地 算法解决这个问题吗?输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]new新数组将原数组分

2021-10-13 23:57:13 34

原创 [easy]第一个错误的版本

你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, …, n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量减少对调用 API 的次数。输入:n = 5, bad = 4输

2021-10-12 23:51:23 38

原创 [easy] 回文数

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。转为字符串,利用charAt函数逐次比较class Solution { public boolean isPalindrome(int x) { if(x<0) return false; else{ String

2021-10-12 23:07:29 77

原创 [easy]整数反转

给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。循环除以10取余判断溢出 public static int reverse(int x) { int ans = 0; while(x!=0) { int digit = x%10; x = x/10; ans = 10*ans+digit; if(ans>Intege

2021-10-12 22:51:02 35

原创 汇总数据

文章目录聚集函数avg()count()max()min()sum()聚集不同值组合聚集函数聚集函数运行在行组上,计算和返回单个值的函数avg()返回所有或特定行或列的平均值select avg(prod_price) as avg_pricefrom products;avg()忽略列值为null的行count()1.count(*)对表中行的数目进行计数,不管表列中包含的值是否为空2.count(column)忽略null值select count(cust_email) as

2021-03-10 19:30:04 63

原创 mysql 使用数据处理函数

文章目录文本处理函数日期时间处理函数数值处理函数文本处理函数其中,soundex()可以将任何文本串转换为描述其语音表示的字母数字模式的算法例如:customers表中有一共顾客cust_contact为Y.Lee。soundex()将匹配所有发音类似于Y.Lee(如Y.Lie)的顾客。select cust_contact from customerswhere soundex(cust_contact) = soundex('Y Lie');日期时间处理函数MySQL使用的日期格式

2021-03-09 22:04:01 75

原创 MySQL 创建计算字段

文章目录计算字段拼接字段使用别名执行算术计算计算字段若存储在表中的数据不是应用程序所需要的,我们需要直接从数据库中检索出转换、计算或格式化后的数据。计算字段并不实际存在于数据库表中。计算字段是运行时在select语句内创建的。只有数据库知道select语句中哪些列是实际的。从客户机的角度来看,计算字段的数据是以与其他列的数据相同的方式返回的。拼接字段拼接:将值联结到一起构成单个值。concat()select concat(vend_name,'(',vend_country,')')fr

2021-03-08 23:46:54 111

原创 MySQL 正则表达式

文章目录基本字符匹配进行or匹配匹配几个字符之一匹配范围匹配特殊字符匹配字符类匹配多个实例定位符基本字符匹配关键字:regexpselect prod_name from productswhere prod_name regexp "1000";regexp后所跟的东西作为正则表达式处理select prod_name from productswhere prod_name regexp ".000";.是正则表达式中一个特殊的字符。它表示匹配任意一个字符。进行or匹配sel

2021-03-06 21:23:31 131

原创 MySQL 通配符过滤

文章目录like操作符%通配符_通配符like操作符like操作符指示MySQL后跟的操作模式是利用通配符匹配而不是相等匹配%通配符%表示任意字符出现任意次数select prod_name from productswhere prod_name like "%Jet%";即:寻找包含Jet字符的prod_name_通配符_表示任意字符出现1次...

2021-03-06 20:07:50 104

原创 MySQL 数据过滤

文章目录数据过滤组合where子句in 操作符not操作符数据过滤组合where子句and or反例说明:and 操作优先级高于or加圆括号in 操作符相当于 or ,in后指定所属范围vend_id是1002或1003not操作符...

2021-03-05 17:01:15 49

原创 MySQL day5过滤数据

文章目录过滤数据使用where条件操作符过滤数据使用where相当于if语句条件操作符空值检查

2021-03-04 23:22:07 40

原创 mysql day4排序检索数据

文章目录排序数据按多个列排序指定排序方向排序数据order by按多个列排序首先按价格排序,其次按名称排序指定排序方向倒叙 DESCorder by + limit 找最值

2021-03-02 21:18:28 39

原创 Java核心技术_Java程序设计概述

文章目录Java程序设计概述Java"白皮书”的关键术语简单性面向对象分布式健壮性安全性体系结构中立可移植性解释性高性能多线程动态性Java程序设计概述Java"白皮书”的关键术语简单性Java与C++相比,没有头文件、指针、结构、联合、操作符重载、虚基类等。面向对象“面向对象的”木匠始终关注的是所制作的椅子,第二位是工具,“面向过程的”木匠首先考虑的是所用的工具。与C++的主要不同点在于多重继承,Java使用的是接口分布式用于处理HTTP和FTP之类的TCP/IP协议。Java能够通过U

2021-03-01 22:49:06 120

原创 MySQL day3数据检索

文章目录数据检索检索所有列检索单个列检索多个列检索不同行限制结果数据检索检索所有列select * form 表名检索单个列select 列名 from 表名检索多个列select 列名1,列名2 from 表名检索不同行distinct限制结果限制行数从第1行开始,共5行从第5行开始,共5行第一个数为开始位置,第二个数为要检索的行数。...

2021-03-01 20:44:37 44

原创 MySQL day2基本语句

查看数据库show databases;新建数据库create database crashcourse;删除数据库drop database crashcourse;查看数据库中的表use crashcourse;show tables;查看每一行show columns from customers;导入外部数据库:利用workbenchcreate xx;schema选择xx...

2021-02-24 20:55:31 50

原创 mysql day1了解sql

什么是数据库数据库:保存有组织的数据的容器表表:某种特定类型数据的结构化清单。存储在表中的数据是一种类型的数据或一个清单。相同数据库中不能两次使用相同的表名模式:描述数据库和表的布局及特性列和数据类型列:表中的一个字段,每一列有特定的数据类型行行:表中的一个记录主键每一行都有可以唯一标识自己的列主键:一列能唯一区分表中每一行满足条件:1.任意两行不能用相同的主键值 2.主键列不允许为null...

2021-02-24 20:26:38 34

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除