刷题常用API及套路总结

1、排序

1.1 排序API

1) Arrays.sort(nums);	 直接快排将数组排序:
2) s.split(" ");          切割字符串为数组 
3) str[i].substring(0,9); 截取字符串        	
4) Arrays.equals(str1, str2);比较两个数组是否一样
5) char[] str1 = s.toCharArray(); 将字符串转为数组
6) table.getOrDefault(ch, 0)   表示或去key为ch的value值 若没有则返回默认设置值0  
7) Arrays.stream(aliceSizes).sum(); 求和。

1.2 排序套路总结

	排序-简单中用的最多的还是 计次排序 占50%,同时使用计次排序的 题也大概率可以用快排直接排序解题。
	根据时间复杂度以及解法频率可以确定从【 计次排序 >= 找最大最小 >= 两个指针 >= 数学 】> 快速排序  优先考虑前三种方向,
最后没办法可以快排实现。
	在使用计次排序时,要注意看一下,是否和桶中的次数有紧密关系,如果仅仅判断桶中是否包含某个元素,则可以直接用HashSet集合。

	[计次排序]:出现【有多少()...】【字符串中带数字】【排序/排列】【人数/个数/次数/总量/x个元素】【线性时间复杂度】
	[找最大最小]:出现【两元素..】的关系 如乘积、差等
	[两个指针]:出现 【调整顺序】 
	[数学]:在可以用计次排序后,可以看看题目中是否对于数字的逻辑公式有较强的相关性,可以尝试数学方法以减小空间复杂度。

2、线性表

1.1 线性表API

1.2 线性表套路总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值