约瑟夫环的几种解决方法

约瑟夫问题 本文参考 leetcode大神题解,查看原文 首先我们来了解下,什么是约瑟夫问题? 这个问题是以弗拉维奥·约瑟夫命名的,他是1世纪的一名

通过优化排序了解策略模式

什么是策略模式? 接下来,我们通过之前复习过的排序算法 来谈谈策略模式。 以选择排序为例,之前我们写的排序算法, 数据类型写的 Integer 类型的数组. 代码如下

了解最长重复子串和子序列

子序列 和 子串(子数组) Q:首先这两个看起来很像的概念有什么区别呢? A: 先抛出结论,子序列默认不连续, 子串(子数组)默认连续 接下来,通过两道题,

143.重排链表

143. 重排链表 给定一个单链表 L:L0→L1→…→Ln-1→Ln , 将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→… 你不能只是单纯

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

215. 数组中的第K个最大元素 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例

153.寻找旋转排序数组中的最小值

153. 寻找旋转排序数组中的最小值 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 请找出其中最小的元素。 你可以假

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

238. 除自身以外数组的乘积 给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。 示例: 输入: [1,2,3,4]

iOS中内联函数的使用

内联函数(inline function) inline 使用 inline 修饰函数的声明或者实现,可以使其变为联函数 当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按通常的函

剑指.Offer.31.栈的压入

剑指 Offer 31. 栈的压入、弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。

剑指offer.04.二维数组中查找

剑指 Offer 04. 二维数组中的查找 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输