添加了python代码(数组篇)

为数组篇文件夹下的代码增加了python语言版本
This commit is contained in:
goodyong
2021-07-10 12:20:02 +08:00
parent 4e661354d4
commit 7dd5ce1f3d
13 changed files with 461 additions and 3 deletions

View File

@@ -21,6 +21,8 @@
这个题目的题意很容易理解就是让我们返回和为 k 的子数组的个数所以我们直接利用双重循环解决该题这个是很容易想到的我们直接看代码吧
Java Code:
```java
class Solution {
public int subarraySum(int[] nums, int k) {
@@ -41,6 +43,8 @@ class Solution {
}
```
Python3版本的代码会超时
下面我们我们使用前缀和的方法来解决这个题目那么我们先来了解一下前缀和是什么东西其实这个思想我们很早就接触过了见下图
![](https://cdn.jsdelivr.net/gh/tan45du/github.io.phonto2@master/myphoto/微信截图_20210113193831.4wk2b9zc8vm0.png)
@@ -61,6 +65,8 @@ presum [2] = presum[1] + nums[1],presum[3] = presum[2] + nums[2] ... 所以我
直接上代码
Java Code:
```java
class Solution {
public int subarraySum(int[] nums, int k) {
@@ -86,6 +92,8 @@ class Solution {
}
```
Python3版本的代码也会超时
我们通过上面的例子我们简单了解了前缀和思想那么我们如果继续将其优化呢
**前缀和 + HashMap**
@@ -94,6 +102,8 @@ class Solution {
其实我们在之前的两数之和中已经用到了这个方法我们一起来回顾两数之和 HashMap 的代码.
Java Code:
```java
class Solution {
public int[] twoSum(int[] nums, int target) {