摘要: 这是LeetCode上的一道题: 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 阅读全文
posted @ 2019-10-29 09:49 ShangyiChen 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 基本思想:将一组要排序的数列分成两部分,其中一部分的值都比另一部分的小;然后按照这个方法分别对两部分数据进行快速排序,整个过程可以用递归进行,从而实现整个数列的排序。 快速排序方法是基于分值策略的,排序在原地排序,不需要辅助的数组,但是分解困难。 快速排序分为三个过程:分解、治理、合并。 分解:先从 阅读全文
posted @ 2019-10-28 22:14 ShangyiChen 阅读(3710) 评论(0) 推荐(1) 编辑
摘要: 这是leetcode上的一道题 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明: 拆分时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。 示例 1: 输入: s = "leetcode", word 阅读全文
posted @ 2019-10-28 11:15 ShangyiChen 阅读(555) 评论(0) 推荐(0) 编辑
摘要: 元组可以看成是一个容器,里面包含了很多的对象,这些对象可以是不同类型的。 有时候,我们需要一个函数返回很多个值的时候,可以用元组的办法来实现。可以定义一个类,将需要返回的对象设为该类的属性,然后把这个类的实例化对象返回。这种方法的一个缺点是,由于返回的对象的类型是不固定的,你不知道返回的是什么样的类 阅读全文
posted @ 2019-10-27 16:49 ShangyiChen 阅读(1731) 评论(0) 推荐(0) 编辑