题目描述:一次股票交易包含买入和卖出,只进行一次交易,求最大收益。 只要记录前面的最小价格,将这个最小价格作为买入价格,然后将当前的价格作为售出价格,查看当前收益是不是最大收益。 主要解题思路是转换成求最大连续子数组,整理了三个解法,单调栈我是没有想到的。。 常规解: 1. class Soluti ...
分类:
其他好文 时间:
2020-04-16 10:34:17
阅读次数:
97
题目描述:最大子数组和问题 1.元素个数不超过100个,存储在文本文件中。 2.元素具有首尾相接特点。 3.输出结果: (1)求出的最大子数组和 (2)该字数组在原数组中的位置(起始下标和结束下标) 代码如下: package com.company; import java.io.*; impor ...
分类:
编程语言 时间:
2020-04-02 17:54:18
阅读次数:
76
要求: 输入一个整形数组,数组里有正数也有负数。 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。要求时间复杂度为O(n) 设计思想 首先需要让其有数可存,设计数组,其次让其满足要求,通过限制条件,使得各个子数组求和,最后找出子数组和的最大值 出现的问题 ...
分类:
编程语言 时间:
2020-02-28 20:36:42
阅读次数:
62
快速排序可以说是最重要的排序,其中延伸的思想和技巧非常值得我们学习。 快速排序也使用了分治的思想,原理如下: 分解:数组A[p..r]被划分为两个(可能为空)子数组A[p..q-1]和A[q+1..r],使得A[p..q-1]中的每一个元素都小于等于A[q],而A[q]也小于等于A[q+1..r]中 ...
分类:
编程语言 时间:
2020-01-14 20:22:56
阅读次数:
96
将数组A[p...p]划分成两个子数组A[p...q-1]和A[q+1,r],使得A[p...q-1]的每一个元素都小于等于A[q],A[q]也小于等于A[q+1,r]中的每个元素。 实现快速排序 void quick_sort(int A[], int p, int r) { int q; if ...
分类:
编程语言 时间:
2020-01-07 11:44:39
阅读次数:
99
Description: Given an integer array arr and an integer k, modify the array by repeating it k times. For example, if arr = [1, 2] and k = 3 then the mo ...
分类:
其他好文 时间:
2020-01-06 21:01:13
阅读次数:
108
链接:https://leetcode-cn.com/problems/continuous-subarray-sum 给定一个包含非负数的数组和一个目标整数 k,编写一个函数来判断该数组是否含有连续的子数组,其大小至少为 2,总和为 k 的倍数,即总和为 n*k,其中 n 也是一个整数。 示例 1 ...
分类:
编程语言 时间:
2019-12-13 21:56:42
阅读次数:
89
之前在其他博客看到了,但是算法的关键部分完全看不懂为什么要这么做,直到最近上算法课,才终于知道到底怎么来的。 问题描述: 给出一个数组,求其最大连续子数组和 例:数组{1,2,3,4,-5,10,-1,-1}的最大连续子数组和是子数组{1,2,3,4,-5,10}的和15 算法过程: 这个算法能从零 ...
分类:
编程语言 时间:
2019-10-28 00:26:03
阅读次数:
137
来源:力扣(LeetCode) 链接:https://leetcode cn.com/problems/maximum subarray 给定一个整数数组 nums?,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 输入: [ 2,1, 3,4, 1,2,1, 5, ...
分类:
其他好文 时间:
2019-10-16 09:51:55
阅读次数:
103
asd import java.util.Scanner; public class SeeAll { public static void main(String arg[]) { System.out.println("你有俩选择,要么自己一下下点,要么它自己动,选前边呢你就扣个1,要不你就扣个 ...
分类:
编程语言 时间:
2019-04-25 22:47:19
阅读次数:
145