当前位置:首页 » 股票买卖 » leetcode股票买卖3
扩展阅读
设计总院股票历史股价 2023-08-31 22:08:17
股票开通otc有风险吗 2023-08-31 22:03:12
短线买股票一天最好时间 2023-08-31 22:02:59

leetcode股票买卖3

发布时间: 2023-06-07 17:18:30

㈠ 股票卖一卖二卖三卖四卖五什么意思

卖1卖2卖3卖4卖5是股票五档行情中的最具有代表性的卖出价格,其中卖1指未成交的最低的卖盘价,以此类推卖盘价逐渐增加,卖5则是未成交的可以看到的最高卖盘价。
只有当买卖盘价格低于或者等于股票的实时价格才有可能成交,因此卖1是最先成交的,卖5是最后成交的(当卖盘价高于市场价时则都不会成交),投资者可以根据自身情况设置价位以避免低价卖出。
拓展资料:
股票交易
一字型:即开盘价、收盘价、最高价、最低价在同一价位。
可分为以下几种情况:
(1)涨停:开盘即以涨停价开出,至收盘为止,涨停未被打开过,全天均以最高价成交,说明买盘旺盛,该股属于强势股。
(2)跌停:开盘即以跌停价开出,至收盘为止,跌停未被打开过,全天均以最低价成交,说明卖盘沉重,该股属于弱势股。
(3)交易非常冷清,全日交易只有一档价位成交。
交易时间
周一至周五 (法定休假日除外)
上午9:30 --11:30 下午13:00 -- 15:00
竞价成交
(1) 竞价原则:价格优先、时间优先。价格较高的买进委托优先于价格较低买进委托,价格较低卖出委托优先于较高的卖出委托;同价位委托,则按时间顺序优先。
(2) 竞价方式:上午9:15--9:25进行集合竞价;上午9:30--11:30、下午13:00--15:00进行连续竞价 (对有效委托逐笔处理)。
交易单位
(1) 股票的交易单位为“股”,100股=1手,委托买入数量必须为100股或其整数倍;
(2) 基金的交易单位为“份”,100份=1手,委托买入数量必须为100份或其整数倍;
(3) 国债现券和可转换债券的交易单位为“手”,1000元面额=1手,委托买入数量必须为1手或其整数倍;
(4)当委托数量不能全部成交或分红送股时可能出现零股 (不足1手的为零股),零股只能委托卖出,不能委托买入零股。
交易帐户
新股民要做的第一件事就是为自己开立一个股票帐户(即股东卡)。股票帐户相当于一个“银行户头”,投资者只有开立了股票帐户才可进行证_买卖。
如要买卖在上海、深圳两地上市的股票,投资者需分别开设上海证_交易所股票帐户和深圳证_交易所股票帐户,开设上海、深圳A股股票帐户必须到证_登记公司或由其授权的开户代理点办理。
股票帐户有许多不同种类。个人投资者如需买卖沪、深股市的A股股票,则需开设A股股票帐户。

㈡ 股票里面买1买2买3买4买5 卖1卖2卖3卖4卖5 分别什么意思

股票五档明细在股票行情软件上分别显示买卖各五个价格,包含买前五档和卖前5档,代表了买卖前5个报价和委托量。可以分为:买1、买2、买3、买4、买5;以及卖1、卖2、卖3、卖4、卖5。

所以我们可以同一时间看到5个买盘价格和5个卖盘价格。其中未成交的最低买价就是买一,而未成交的最高卖价就是卖一,其余类推。

举例来说明:某一只股票的最新报价是:

卖二15.03元、卖一15.02元、买一15.01元、买二15.00元.

那么如果你想要买入股票的话,只要报价高于卖一,那么就可以即时成交,成交价就是15.02元。而如果你的报价是15.00元,那么你就得跟其他报价15.00元买入的投资者一起排队等候。直到价格跌至15.00元,你才有机会成交。

温馨提示:以上内容, 仅供参考。
应答时间:2021-07-16,最新业务变化请以平安银行官网公布为准。
[平安银行我知道]想要知道更多?快来看“平安银行我知道”吧~
https://b.pingan.com.cn/paim/iknow/index.html

㈢ leetcode算法

*最近在做一些 leetcode 的算法题,我会将自己做过的算法题记录下来以供大家参考,如果查找不方便请看 油猴插件实现网站左侧目录生成。

给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在 原地修改输入数组 并在使用 O(1) 额外空间的条件下完成。

示例:

解答:

     

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。
注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。

示例:

提示:

解答:

     

给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。

示例:

说明:

解答:

     

给定一个整数数组,判断是否存在重复元素。
如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。

示例:

解答:

     

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

说明:
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

示例:

解答:

     

给定两个数组,编写一个函数来计算它们的交集。

示例:

说明:

进阶:

解答:

     

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。

示例:

解答:

     

给定一个数组 nums ,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

示例:

说明:

     

给定一个整数数组 nums 和一个目标值 target ,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

示例:

解答:

     

判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。

数独部分空格内已填入了数字,空白格用 '.' 表示。

示例:

说明:

解答:

     

给定一个 *n *× *n* 的二维矩阵表示一个图像。
将图像顺时针旋转 90 度。

说明:
你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。 请不要 使用另一个矩阵来旋转图像。

示例:

解答:

     

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
不要给另外的数组分配额外的空间,你必须 原地修改输入数组 、使用 O(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。

示例:

解答:

     

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

示例:

注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。

解答:

     

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。

示例:

解答:

     

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
长度一样,包含的字母都一样,每个字符出现的频率也一样,只是顺序不同而已,这就属于异位词,

示例:

说明:
你可以假设字符串只包含小写字母。

进阶:
如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?

解答:

     

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明 :本题中,我们将空字符串定义为有效的回文串。

示例:

解答:

     

请你来实现一个 atoi 函数,使其能将字符串转换成整数。

首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:

注意 :假如该字符串中的第一个非空格字符不是一个有效整数字符、字符串为空或字符串仅包含空白字符时,则你的函数不需要进行转换,即无法进行有效转换。

在任何情况下,若函数不能进行有效的转换时,请返回 0 。

提示

示例:

解答:

     

实现 strStr() 函数。
给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始) 。如果不存在,则返回 -1

示例:

说明:
当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。
对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与C语言的 strstr() 以及 Java的 indexOf() 定义相符

解答:

     

“外观数列”是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。前五项如下:

1 被读作 "one 1" ("一个一") , 即 11 。
11 被读作 "two 1s" ("两个一") , 即 21 。
21 被读作 "one 2", "one 1" ("一个二" , "一个一") , 即 1211 。
给定一个正整数 n(1 ≤ n ≤ 30),输出外观数列的第 n 项。

注意 :整数序列中的每一项将表示为一个字符串。

示例:

解答:

     

编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 "" 。

示例:

说明:
所有输入只包含小写字母 a-z 。

解答:

     

请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。
现有一个链表 -- head = [4,5,1,9],它可以表示为:

示例:

说明:

解答:

     

给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。

示例:

说明:
给定的 n 保证是有效的。

进阶:
你能尝试使用一趟扫描实现吗?

解答:

     

反转一个单链表。

示例:

解答:

     

将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

示例:

解答:

     

请判断一个链表是否为回文链表。

示例:

解答:

     

给定一个链表,判断链表中是否有环。
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1 ,则在该链表中没有环。

示例:

解答:

     

给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

说明 : 叶子节点是指没有子节点的节点。

示例:
给定二叉树 [3,9,20,null,null,15,7] ,

返回它的最大深度 3 。

解答:

     

给定一个二叉树,判断其是否是一个有效的二叉搜索树。
假设一个二叉搜索树具有如下特征:

示例:

解答:

     

给定一个二叉树,检查它是否是镜像对称的。

例如,二叉树 [1,2,2,3,4,4,3] 是对称的。

但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:

解答:

     

给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。

示例:
二叉树: [3,9,20,null,null,15,7] ,

返回其层次遍历结果:

解答:

     

将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。
本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。

示例:
给定有序数组: [-10,-3,0,5,9] ,
一个可能的答案是: [0,-3,9,-10,null,5] ,它可以表示下面这个高度平衡二叉搜索树:

解答:

     

给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。

说明:

示例:

解答:

     

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

示例:

解答:

     

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
注意 :给定 n 是一个正整数。

示例:

解答:

     

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。
注意 :你不能在买入股票前卖出股票。

示例:

解答:

     

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

示例:

解答:

     

你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。
给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。

示例:

解答:

     

打乱一个没有重复元素的数组。

示例:

解答:

     

设计一个支持 push , pop , top 操作,并能在常数时间内检索到最小元素的栈。

示例:

解答:

     

写一个程序,输出从 1 到 n 数字的字符串表示。

示例:

解答:

     

统计所有小于非负整数 n 的质数的数量。

示例:

解答:

     

给定一个整数,写一个函数来判断它是否是 3 的幂次方。

示例:

解答:

     

罗马数字包含以下七种字符: I , V , X , L , C , D 和 M 。

例如,罗马数字 2 写做 II ,即为两个并列的 1 。 12 写做 XII ,即为 X + II 。 27 写做 XXVII , 即为 XX + V + II 。

通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII ,而是 IV 。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地,数字 9 表示为 IX 。这个特殊的规则只适用于以下六种情况:

示例:

解答:

     

编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量 )。

示例:

提示:

㈣ 103. leetcode笔记(1~60)

d1

https://leetcode-cn.com/problems/two-sum
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
【hashmap存储】

给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。
请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。

nums1 = [1, 2]
nums2 = [3, 4]
则中位数是 (2 + 3)/2 = 2.5
【奇偶判断】

给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。
输入: "babad"
输出: "bab"
注意: "aba" 也是一个有效答案。
【双循环贪心】

d2

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
输入: 121
输出: true
【折半比较】

给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。
在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。
注意:
假设字符串的长度不会超过 1010。
示例:
输入:
"abccccdd"
输出:
7
【集合更新与判空】(add remove, 放入可回文的字符,无重复)

给你一个字符串 s 和一个字符规律 p ,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配。
'.' 匹配任意单个字符
'*' 匹配零个或多个前面的那一个元素
所谓匹配,是要涵盖 **整个 **字符串 s 的,而不是部分字符串。
说明:

【正则包与结果项】

d3

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
示例:
给定数组 nums = [1,1,2],
函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。
你不需要考虑数组中超出新长度后面的元素。
【新计数索引】

给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。
示例:
给定 nums = [3,2,2,3], val = 3,
函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。
你不需要考虑数组中超出新长度后面的元素。
【while val存在】

实现 strStr() 函数:
给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。
示例:
输入: haystack = "hello", needle = "ll"
输出: 2

【str.index(p)】

d4

【分支递归乘数】

给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。
给定 nums = [-2, 0, 3, -5, 2, -1],求和函数为 sumRange()
sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3
【缓存和】

给定一个二进制数组,你可以最多将 1 个 0 翻转为 1,找出其中最大连续 1 的个数。
输入:[1,0,1,1,0]
输出:4
解释:翻转第一个 0 可以得到最长的连续 1。
当翻转以后,最大连续 1 的个数为 4。
【最近0的出现位置】

d5

对于一个 正整数,如果它和除了它自身以外的所有正因子之和相等,我们称它为“完美数”
输出: True
解释: 28 = 1 + 2 + 4 + 7 + 14
【折平根比较】

修改一个数,则变成非递减数列,输出True
【嵌套条件分支】

123456789101112...求出第N个数字对应的单字符数值
【while True中的数量级t和求解条件m】

d6

列表中存在最大长度为k的两个相等的数,则返True
给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的绝对值最大为 k。如输入: nums = [1,2,3,1], k = 3, 输出: true

【集合表示滑动窗口】

【双指针追踪】

两个数不是同一个数,存在某数2倍数的一个数则返回True
【判双零】

d7

两个数值型字符串,相加后返回结果字符串
【while中低位进位】

求节点与其祖先之间的最大差,如:

【左右递归dfs返回最大差】

一排人领糖果, 相邻的人rating高的获得较多糖,每人都有糖果。

老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。
你需要按照以下要求,帮助老师给这些孩子分发糖果:
每个孩子至少分配到 1 个糖果。
相邻的孩子中,评分高的孩子必须获得更多的糖果。
那么这样下来,老师至少需要准备多少颗糖果呢?如输入: [1,0,2], 输出: 5
解释: 你可以分别给这三个孩子分发 2、1、2 颗糖果。

【左右规则】

d8

返回链表中倒数第k个节点值
【双指针追踪】

是否平衡二叉树,即任意一个节点其两颗子树的高度差不超过一。
【递归返回是否平衡和树高】

【三重while中低位进位】

d9

删除链表中的节点
【制造伪头结点】

之字形层次遍历二叉树,如:

【递归含层数的层次遍历与折返判断】

如果一个数的左边数组和与右边数组和相等,则返回此中间数的索引。
【从左累加与总和比较】

d10

输出二叉树的镜像, 如:

【制造临时节点的自身递归】

自底向上遍历二叉树,如:

【递归层次遍历】

【含hashmap[depth]的dfs递归】

d11

返回除法结果,不越界[-2**31, 2**31-1]
【正负/零划分】

一个数的二进制表示中1的个数
【带奇偶判断的逐右移位】

移除所有值为val的节点,返回链表。如输入: 1->2->6->3->4->5->6, val = 6
输出: 1->2->3->4->5
【含有目标比较的自身递归】

d12

实现int sqrt(int x)函数
【牛顿迭代】

【两次判空与全存在的各自相加】

求出根到叶子节点路径总和为固定值的所有路径集

【目标递减下叶子和当前更新的路径和与目标值的比较】

d13

数组中是否有独一无二的出现次数
【hashmap计数与值数组判重】

给定一个无序的整数数组,找到其中最长上升子序列的长度。如输入: [10,9,2,5,3,7,101,18]
输出: 4 ,解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。

【双循环动态规划】

【递归判断】

d14

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。
注意你不能在买入股票前卖出股票。如输入: [7,1,5,3,6,4]
输出: 5
解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。
注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。

【最低股价与最大利润同时更新】

输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。
要求时间复杂度为O(n)。如输入: nums = [-2,1,-3,4,-1,2,1,-5,4]
输出: 6, 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。

【max0 sum0初始索引0赋值,与sum0>0判断】

给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。如输入: n = 12
输出: 3 ,解释: 12 = 4 + 4 + 4
【动态规划双循环解背包问题】

d15

统计所有小于非负整数 n 的质数的数量。如输入: 10
输出: 4,解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。
【筛去法】

找出第 n 个丑数。
丑数就是只包含质因数 2, 3, 5 的正整数。如输入: n = 10
输出: 12, 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。
【三指针动态规划】

给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;非负整数 fee 代表了交易股票的手续费用。
你可以无限次地完成交易,但是你每次交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。

返回获得利润的最大值。如输入: prices = [1, 3, 2, 8, 4, 9], fee = 2
输出: 8,解释: 能够达到的最大利润:
在此处买入 prices[0] = 1
在此处卖出 prices[3] = 8
在此处买入 prices[4] = 4
在此处卖出 prices[5] = 9
总利润: ((8 - 1) - 2) + ((9 - 4) - 2) = 8.
【买入卖出的动态规划】

d16

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。
注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
如输入: [7,1,5,3,6,4]
输出: 7
解释:
在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出,
这笔交易所能获得利润 = 5-1 = 4 。
随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,
这笔交易所能获得利润 = 6-3 = 3 。

【同leet714 多次买卖的动态规划】

是否是相同的树
【同空、不同空判断后的自身递归】

不特定根节点和叶子节点,返回路径总和为固定值的路径数
【自身递归与dfs递归】

d17

找出右边的值小于当前值的数的个数:
使用线段树构建左右子树,并从右到左计算前面的数小于当前值的数的个数,最终返回依次进入结果数组的list的倒置值。

【list复制法】
将遍历到的前两个和数都去掉,双重遍历T(n)= O(n)

规范的路径表示写法转换为最简路径
【栈进栈出,判断'' '.' '..'()】

d18

【复制字符库,逐次后移匹配库起始点】

按要求分一个数组为m份,求其中子数组的最大值中最小一个
【二分查找、设定子数组最大的和mid作划分节点】

【二分思想,拆分数组递归】(不用判断平衡)

d19(52%)

两个字符串对应位置移动总次数在指定步数内(ascii值的差),求字符串的最大可变换长
【滑窗记录更新最初位置、不断更新当前滑窗内移动步数最小值】

㈤ 股票买卖中的,买1;买2;买3;买4;买5是什么意思

就是最近买卖的5档价格。只有买一和卖一有点意义,其他四档价格,可以作假的
你记到,你证交所的撮合系统,是根据“时间优先,价格优先”两个准则就是了。
同个价格,先委托,先成交。同个时间,价格高的先成交。
但是所有报价都是先按照时间排序,再按照价格排序

㈥ 股票卖1卖2卖3卖4卖5是什么意思

股票卖1卖2卖3卖4卖5是指投资者可以看到的5个不同的卖盘价,价格由低到高依次排队,出价最低者为卖一,其次为卖二、卖三、卖四、卖五。
除了以上还有买一、买二、买三、买四、买五,而位于买一、卖一的价格就被称为买一价格和卖一价格。买一、买二、买三、买四、买五;卖一、卖二、卖三、卖四、卖五被称为五档盘口,在委托买入和卖出都按委托价高低按序排列来定的。通过不同价格的数量,可以看出人们买入或者卖出的意愿。
买卖股票时要掌握一定的股票知识,比如看得懂K线图,掌握一定的买卖技巧,只有这样在买卖股票时才有可能赚到钱,不讨在买卖股票时会面临巨大的风险,赔钱的概率非常大涨 ,投资股票要保持良好的心态,尤其亏损时,因为只有良好的心态才能让投资者作出正确的判断,而且在投资股票时一定要向有经验的人学习。最后就是投资时使用个人的闲钱,不要借钱炒股,避免亏损后影响正堂生活。
【拓展资料】
股票是资本市场的长期信用工具,可以转让,买卖,股东凭借它可以分享公司的利润,但也要承担公司运作错误所带来的风险。每股股票都代表股东对企业拥有一个基本单位的所有权。每家上市公司都会发行股票。同一类别的每一份股票所代表的公司所有权是相等的。每个股东所拥有的公司所有权份额的大小,取决于其持有的股票数量占公司总股本的比重。股票是股份公司资本的构成部分,可以转让、买卖,是资本市场的主要长期信用工具,但不能要求公司返还其出资。
上市的股票称流通股,可在股票交易所自由买卖。非上市的股票没有进入股票交易所,因此不能自由买卖,称非上市流通股。这种所有权为一种综合权利,如参加股东大会、投票标准、参与公司的重大决策、收取股息或分享红利等,但也要共同承担公司运作错误所带来的风险。
股票是股份证书的简称,是股份公司为筹集资金而发行给股东作为持股凭证并借以取得股息和红利的一种有价证券。每股股票都代表股东对企业拥有一个基本单位的所有权。股票是股份公司资本的构成部分,可以转让、买卖或作价抵押,是资金市场的主要长期信用工具。

㈦ LeetCode热题100

1.两数之和  简单

https://leetcode-cn.com/problems/two-sum/

15. 三数之和 中等

https://leetcode-cn.com/problems/3sum/

49. 字母异位词分组 中等

https://leetcode-cn.com/problems/group-anagrams/

56. 合并区间 中等

https://leetcode-cn.com/problems/merge-intervals/

148. 排序链表 中等

https://leetcode-cn.com/problems/sort-list/

1.两数之和  简单

https://leetcode-cn.com/problems/two-sum/

128. 最长连续序列 中等

https://leetcode-cn.com/problems/longest-consecutive-sequence/

438. 找到字符串中所有字母异位词 中等

https://leetcode-cn.com/problems/find-all-anagrams-in-a-string/

448. 找到所有数组中消失的数字 简单 原地存储次数

https://leetcode-cn.com/problems/find-all-numbers-disappeared-in-an-array/

2.两数相加 中等

https://leetcode-cn.com/problems/add-two-numbers/

21. 合并两个有序链表 简单

https://leetcode-cn.com/problems/merge-two-sorted-lists/

22. 括号生成 中等

https://leetcode-cn.com/problems/generate-parentheses/

23. 合并K个升序链表 困难

https://leetcode-cn.com/problems/merge-k-sorted-lists/

39. 组合总和 中等

https://leetcode-cn.com/problems/combination-sum/

46. 全排列 中等

https://leetcode-cn.com/problems/permutations/

48. 旋转图像 中等

https://leetcode-cn.com/problems/rotate-image/

78. 子集 中等

https://leetcode-cn.com/problems/subsets/

105. 从前序与中序遍历序列构造二叉树 中等

https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/

114. 二叉树展开为链表 中等

https://leetcode-cn.com/problems/flatten-binary-tree-to-linked-list/

3. 无重复字符的最长子串 中等

https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/

4. 寻找两个正序数组的中位数 困难

https://leetcode-cn.com/problems/median-of-two-sorted-arrays/

11. 盛最多水的容器 中等

https://leetcode-cn.com/problems/container-with-most-water/

15. 三数之和 中等

https://leetcode-cn.com/problems/3sum/

31. 下一个排列 中等

https://leetcode-cn.com/problems/next-permutation/

55. 跳跃游戏 中等

https://leetcode-cn.com/problems/jump-game/

75. 颜色分类 中等

https://leetcode-cn.com/problems/sort-colors/

76. 最小覆盖子串 困难

https://leetcode-cn.com/problems/minimum-window-substring/

283. 移动零 简单

https://leetcode-cn.com/problems/move-zeroes/

581. 最短无序连续子数组 中等

https://leetcode-cn.com/problems/shortest-unsorted-continuous-subarray/

32. 最长有效括号 困难

https://leetcode-cn.com/problems/longest-valid-parentheses/

42. 接雨水 困难

https://leetcode-cn.com/problems/trapping-rain-water/

53. 最大子序和 简单

https://leetcode-cn.com/problems/unique-paths/

70. 爬楼梯 简单

https://leetcode-cn.com/problems/climbing-stairs/

96. 不同的二叉搜索树 中等

https://leetcode-cn.com/problems/unique-binary-search-trees/

121. 买卖股票的最佳时机 简单

https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/

139. 单词拆分 中等

https://leetcode-cn.com/problems/word-break/

152. 乘积最大子数组 中等

https://leetcode-cn.com/problems/maximum-proct-subarray/

198. 打家劫舍 中等

https://leetcode-cn.com/problems/house-robber/

279. 完全平方数 中等

https://leetcode-cn.com/problems/perfect-squares/

300. 最长递增子序列 中等

https://leetcode-cn.com/problems/longest-increasing-subsequence/

309. 最佳买卖股票时机含冷冻期 中等

https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/

337. 打家劫舍 III 中等

https://leetcode-cn.com/problems/house-robber-iii/

338. 比特位计数 简单

https://leetcode-cn.com/problems/counting-bits/

5. 最长回文子串 中等

https://leetcode-cn.com/problems/longest-palindromic-substring/

10. 正则表达式匹配 困难

https://leetcode-cn.com/problems/regular-expression-matching/

62. 不同路径 中等

https://leetcode-cn.com/problems/unique-paths/

64. 最小路径和 中等

https://leetcode-cn.com/problems/minimum-path-sum/

72. 编辑距离 困难

https://leetcode-cn.com/problems/edit-distance/

221. 最大正方形 中等

https://leetcode-cn.com/problems/maximal-square/

79. 单词搜索 中等

https://leetcode-cn.com/problems/word-search/

94. 二叉树的中序遍历 简单

https://leetcode-cn.com/problems/binary-tree-inorder-traversal/

98. 验证二叉搜索树 中等

https://leetcode-cn.com/problems/validate-binary-search-tree/

101. 对称二叉树 简单

https://leetcode-cn.com/problems/symmetric-tree/

104. 二叉树的最大深度 简单

https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/

124. 二叉树中的最大路径和 困难

https://leetcode-cn.com/problems/binary-tree-maximum-path-sum/

226. 翻转二叉树 简单

https://leetcode-cn.com/problems/invert-binary-tree/

236. 二叉树的最近公共祖先 中等

https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/

297. 二叉树的序列化与反序列化 困难

https://leetcode-cn.com/problems/serialize-and-deserialize-binary-tree/

337. 打家劫舍 III 中等

https://leetcode-cn.com/problems/house-robber-iii/

437. 路径总和 III 中等

https://leetcode-cn.com/problems/path-sum-iii/

538. 把二叉搜索树转换为累加树 中等

https://leetcode-cn.com/problems/convert-bst-to-greater-tree/

543. 二叉树的直径 中等

https://leetcode-cn.com/problems/diameter-of-binary-tree/

617. 合并二叉树 简单

https://leetcode-cn.com/problems/merge-two-binary-trees/

17. 电话号码的字母组合 中等

https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/

102. 二叉树的层序遍历 中等

https://leetcode-cn.com/problems/binary-tree-level-order-traversal/

200. 岛屿数量 中等

https://leetcode-cn.com/problems/number-of-islands/

17. 电话号码的字母组合 中等

https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/

22. 括号生成 中等

https://leetcode-cn.com/problems/generate-parentheses/

39. 组合总和 中等

https://leetcode-cn.com/problems/combination-sum/

46. 全排列 中等

https://leetcode-cn.com/problems/permutations/

78. 子集 中等

https://leetcode-cn.com/problems/subsets/

79. 单词搜索 中等

https://leetcode-cn.com/problems/word-search/

301. 删除无效的括号 困难

https://leetcode-cn.com/problems/remove-invalid-parentheses/

394. 字符串解码 中等

https://leetcode-cn.com/problems/decode-string/

19. 删除链表的倒数第 N 个结点 中等

https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/

141. 环形链表 简单

https://leetcode-cn.com/problems/linked-list-cycle/

142. 环形链表 II 中等 弗罗里德判圈法

https://leetcode-cn.com/problems/linked-list-cycle-ii/

287. 寻找重复数 中等 弗罗里德判圈法

https://leetcode-cn.com/problems/find-the-plicate-number/

20. 有效的括号 简单

https://leetcode-cn.com/problems/valid-parentheses/

42. 接雨水 困难

https://leetcode-cn.com/problems/trapping-rain-water/

84. 柱状图中最大的矩形 困难

https://leetcode-cn.com/problems/largest-rectangle-in-histogram/

85. 最大矩形 困难

https://leetcode-cn.com/problems/maximal-rectangle/

155. 最小栈 简单

https://leetcode-cn.com/problems/min-stack/

739. 每日温度 中等

https://leetcode-cn.com/problems/daily-temperatures/

33. 搜索旋转排序数组 中等

https://leetcode-cn.com/problems/search-in-rotated-sorted-array/

48. 旋转图像 中等

https://leetcode-cn.com/problems/rotate-image/

96. 不同的二叉搜索树 中等

https://leetcode-cn.com/problems/unique-binary-search-trees/

169. 多数元素 简单

https://leetcode-cn.com/problems/majority-element/

238. 除自身以外数组的乘积 中等

https://leetcode-cn.com/problems/proct-of-array-except-self/

240. 搜索二维矩阵 II 中等

https://leetcode-cn.com/problems/search-a-2d-matrix-ii/

406. 根据身高重建队列 中等

https://leetcode-cn.com/problems/queue-reconstruction-by-height/

34. 在排序数组中查找元素的第一个和最后一个位置 中等

https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array/

136. 只出现一次的数字 简单

https://leetcode-cn.com/problems/single-number/

338. 比特位计数 简单

https://leetcode-cn.com/problems/counting-bits/

461. 汉明距离 简单

https://leetcode-cn.com/problems/hamming-distance/

146. LRU 缓存机制 中等

https://leetcode-cn.com/problems/lru-cache/

160. 相交链表 简单

https://leetcode-cn.com/problems/intersection-of-two-linked-lists/

206. 反转链表 简单

https://leetcode-cn.com/problems/reverse-linked-list/

234. 回文链表 简单

https://leetcode-cn.com/problems/palindrome-linked-list/

207. 课程表 中等

https://leetcode-cn.com/problems/course-schele/

208. 实现 Trie (前缀树) 中等

https://leetcode-cn.com/problems/implement-trie-prefix-tree/

215. 数组中的第K个最大元素 中等

https://leetcode-cn.com/problems/kth-largest-element-in-an-array/

239. 滑动窗口最大值 困难

https://leetcode-cn.com/problems/sliding-window-maximum/

347. 前 K 个高频元素 中等

https://leetcode-cn.com/problems/top-k-frequent-elements/

322. 零钱兑换 中等

https://leetcode-cn.com/problems/coin-change/

416. 分割等和子集 中等

https://leetcode-cn.com/problems/partition-equal-subset-sum/

494. 目标和 中等

https://leetcode-cn.com/problems/target-sum/

312. 戳气球 困难

https://leetcode-cn.com/problems/burst-balloons/

322. 零钱兑换 中等

https://leetcode-cn.com/problems/coin-change/

399. 除法求值 中等

https://leetcode-cn.com/problems/evaluate-division/

560. 和为K的子数组 中等

https://leetcode-cn.com/problems/subarray-sum-equals-k/

621. 任务调度器 中等

https://leetcode-cn.com/problems/task-scheler/

二十三、马拉车(中心扩散+对称性)

647. 回文子串 中等

https://leetcode-cn.com/problems/palindromic-substrings/

㈧ 请问 股票的 买1 买2 买3 买4 买5 是什么意思

股票里 买1买2买3买4买5 卖1卖2卖3卖4卖5 是:

通常情况下,在股票行情软件上分别显示买卖各五个价格。

即:买一、买二、买三、买四、买五;卖一、卖二、卖三、卖四、卖五。

同一时间可以看到5个买盘价格和5个卖盘价格。未成交的最低卖价就是卖一,未成交的最高买价就是买一,其余类推。

例如某股票的最新报价:

卖五10.05 买五9.96元

卖四10.04 买四9.97元

卖三10.03元 买三9.98元

卖二10.02元 买二9.99元

卖一10.01元 买一10.00元

若你想买入股票,当你报价高于卖一,即高于10.01元的任何价位,就可即时成交,成交价是10.01元。如果你的报价是9.99元,那么你就跟其他报价9.99元买入的投资者一起排队等候。等到即市价格跌至9.99元,你才有机会成交。

委比是衡量一段时间内场内买、卖盘强弱的技术指标。

它的计算公式为:委比=(委买手数-委卖手数)/(委买手数+委卖手数)×100%。


(8)leetcode股票买卖3扩展阅读:

交易费用

股票买进和卖出都要收佣金(手续费),买进和卖出的佣金由各证券商自定(最高为成交金额的千分之三,最低没有限制,越低越好。),一般为:成交金额的0.05%,佣金不足5元按5元收。

卖出股票时收印花税:成交金额的千分之一 (以前为3‰,2008年印花税下调,单边收取千分之一)。

2015年8月1日起,深市,沪市股票的买进和卖出都要照成交金额0.02‰收取过户费

以上费用,小于1分钱的部分,按四舍五入收取。

㈨ 程序员算法实现-买卖股票的最佳时机系列问题

主要思路:因为只有一股可以交易,所以我们可以枚举 必须以i位置作为卖出时机的情况下,得到的最大收益是多少。如果我们得到每个i位置的最大收益,那么最大收益必是所有位置的最大收益的最大值

使用两个变量:

min变量:表示遍历到的位置之前的最小值是什么。

max变量:表示当前收集到必须以i位置卖出的最大收益是多少。

遍历数组一遍,在遍历到i位置的时候,min和max的更新逻辑如下:

遍历完数组,返回max的值就是最终答案。完整代码见:

主要思路:由于可以进行任意次的交易,但是任何时候最多只能持有一股股票,所以我们可以把股票曲线的所有 上升段 都抓取到,累加收益就是最大收益。遍历数组,遍历到的位置减去前一个位置的值,如果是正数,就收集,如果是负数,就把本次收益置为0(就等于没有做这次交易),这样遍历一遍数组,就不会错过所有的收益。

设置一个变量max,初始为0,用于收集最大收益值,来到i位置,max更新逻辑如下:

完整代码如下:

由本题可以简单得出一个结论: 如果数组元素个数为N,则最多执行N/2次交易就可以抓取所有的上升段的值(极端情况下,当前时刻买,下一个时刻卖,保持这样的交易一直到最后,执行的交易次数就是N/2)

主要思路:

在第2种情况下,我们定义

其中dp[i][j]表示[0...i]范围内交易j次获得的最大收益是多少。如果可以把dp这个二维表填好,那么返回dp[N-1][k]的值就是题目要的答案。

dp这个二维矩阵中,

第一行的值表示数组[0..0]范围内,交易若干次的最大收益,显然,都是0。

第一列的值表示数组[0...i]范围内,交易0次获得的最大收益,显然,也都是0。

针对任何一个普遍位置dp[i][j]的值,

我们可以枚举i位置是否参与交易,如果i位置不参与交易,那么dp[i][j] = dp[i-1][j],如果i位置参与交易,那么i位置一定是最后一次的卖出时机。

那最后一次买入的时机,可以是如下情况:

最后一次买入的时机在i位置,那么dp[i][j] = dp[i][j-1] - arr[i] + arr[i]

最后一次买入的时机在i-1位置,那么dp[i][j] = dp[i-1][j-1] - arr[i-1] + arr[i]

最后一次买入的时机在i-2位置,那么dp[i][j] = dp[i-2][j-1] - arr[i-2] + arr[i]

...

最后一次买入的时机在0位置,那么dp[i][j] = dp[0][j-1] - arr[0] + arr[i]

完整代码如下:

上述代码中包含一个枚举行为

增加了时间复杂度,我们可以优化这个枚举。

我们可以举一个具体的例子来说明如何优化,

比如,

当我们求dp[5][3]这个值,我们可以枚举5位置是否参与交易,假设5位置不参与交易,那么dp[5][3] = dp[4][3],假设5位置参与交易,那么5位置一定是最后一次的卖出时机。那最后一次买入的时机,可以是如下情况:

最后一次买入的时机在5位置,那么dp[5][3] = dp[5][2] - arr[5] + arr[5]

最后一次买入的时机在4位置,那么dp[5][3] = dp[4][2] - arr[4] + arr[5]

最后一次买入的时机在3位置,那么dp[5][3] = dp[3][2] - arr[3] + arr[5]

最后一次买入的时机在2位置,那么dp[5][3] = dp[2][2] - arr[2] + arr[5]

最后一次买入的时机在1位置,那么dp[5][3] = dp[1][2] - arr[1] + arr[5]

最后一次买入的时机在0位置,那么dp[5][3] = dp[0][2] - arr[0] + arr[5]

我们求dp[4][3]这个值,我们可以枚举4位置是否参与交易,假设4位置不参与交易,那么dp[4][3] = dp[3][3],假设4位置参与交易,那么4位置一定是最后一次的卖出时机。那最后一次买入的时机,可以是如下情况:

最后一次买入的时机在4位置,那么dp[4][3] = dp[4][2] - arr[4] + arr[4]

最后一次买入的时机在3位置,那么dp[4][3] = dp[3][2] - arr[3] + arr[4]

最后一次买入的时机在2位置,那么dp[4][3] = dp[2][2] - arr[2] + arr[4]

最后一次买入的时机在1位置,那么dp[4][3] = dp[1][2] - arr[1] + arr[4]

最后一次买入的时机在0位置,那么dp[4][3] = dp[0][2] - arr[0] + arr[4]

比较dp[5][3]和dp[4][3]的依赖关系,可以得到如下结论:

假设在求dp[4][3]的过程中,以下递推式的最大值我们可以得到

dp[4][2] - arr[4]

dp[3][2] - arr[3]

dp[2][2] - arr[2]

dp[1][2] - arr[1]

dp[0][2] - arr[0]

我们把以上式子的最大值定义为best,那么

dp[5][3] = Math.max(dp[4][3],Math.max(dp[5][2] - arr[5] + arr[5], best + arr[5]))

所以dp[5][3]可以由dp[4][3]加速得到,

同理,

dp[4][3]可以通过dp[3][3]加速得到,

dp[3][3]可以通过dp[2][3]加速得到,

dp[2][3]可以通过dp[1][3]加速得到,

dp[1][3]可以很简单得出,dp[1][3]有如下几种可能性:

可能性1,1位置完全不参与,则

可能性2,1位置作为最后一次的卖出时机,买入时机是1位置

可能性3,1位置作为最后一次的卖出时机,买入时机是0位置

此时,best的值为

然后通过dp[1][3]加速dp[2][3],通过dp[2][3]加速dp[3][3]......,所以二维dp的填写方式是按列填,

先填dp[1][0],dp[1][2]一直到dp[1][k],填好第一列;

然后填dp[2][0],dp[2][1]一直到dp[2][k],填好第二列;

...

依次填好每一列,直到填完第N-1列。

枚举行为被优化,优化枚举后的完整代码如下:

主要思路:上一个问题中,令k=2就是本题的答案。

主要思路:因为有了冷冻期,所以每个位置的状态有如下三种:

定义三个数组,分别表示i位置这三种情况下的最大值是多少

显然有如下结论:

针对一个普遍位置i

最大收益就是如上三种方式的最大值。完整代码见:

由于三个数组有递推关系,所以可以用三个变量替换三个数组,做空间压缩,优化后的代码如下:

主要思路:由于没有冷冻期,所以在i位置的时候,状态只有两种

针对0位置

针对普遍位置i

完整代码如下:

同样的,两个数组都有递推关系,可以做空间压缩,简化后的代码如下:

原文链接:买卖股票的最佳时机系列问题 - Grey Zeng - 博客园