题目描述 请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O…
分类:算法
递归法解决小学数学吃桃问题
问题: 有这样一个问题,去水果摊买桃子吃,吃完之后三个桃核可以再换一个桃子。 假如现在买了N个桃子,最多可以吃到几个桃子? 分析: 典型的递归解决问题。找出桃子数量、桃核数量和最终数量之间的关系,递归调用,便直接解决问题…
翻硬币
问题描述 小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。 比如,可能情形是:**oo***oooo 如果同时翻转左边的两个硬币,则变为:ooo…
有序数组中绝对值不同的数的个数
/** * "有序数组中绝对值不同的数的个数"指的是,一个已经排好序的整数数组中绝对值不相同的数字的个数; 例如: [-5,-3,-1,0,3,6] * 绝对值不同的数的个数为5,因为其中有5个不同的绝对值: 0, 1,…
C++ 面向对象余额宝小练习
C5-1 “鱼额宝” (100/100 分数) 题目描述 请实现一个“鱼额宝”类,下面已给出代码模板,请根据main函数中对该类的操作,补充类实现部分完成代码。 “鱼额宝”类可以记录账户余额、存钱、取钱、计…
C++ 多继承类练习
C7-2 多继承 (100/100 分数) 题目描述 下面的代码声明了三个基类Base1、Base2和Base3,然后从这三个基类按照公有方式派生出类Derived。在每个类中分别定义带一个整…
超级次方取模问题
/** * @param {number} a * @param {number[]} b * @return {number} */ var superPow = function(a, b) { if(b == nu…
46,全排列
给定一个没有重复数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] …
零件分组【贪心算法习题python】
题目描述 某工厂生产一批棍状零件,每个零件都有一定的长度(Li)和重量(Wi)。现在为了加工需要,要将它们分成若干组,使每一组的零件都能排成一个长度和重量都不下降(若i<j,则Li<=Lj,Wi<=Wj…
二分查找(binary search)
概念: 1.二分查找又称折半查找,它是一种效率较高的查找方法。 2.二分查找要求:(1)必须采用顺序存储结构 (2).必须按关键字大小有序排列 3.原理:将数组分为三部分,依次是中值(所谓的中值就是数组中间位置的那个值)…
谈递归
递归真是个奇妙的思维方式。自打我大二学习递归以来,对一些简单的递归问题,我总是惊叹于递归描述问题和编写代码的简洁。但是总感觉没能融会贯通地理解递归,有时尝试用大脑去深入“递归”,层次较深时便常产生进不去,出不来的感觉。这…
排序算法类(待完善)
不多说废话了,直接贴上代码,个人把常用的排序算法写成了一个类,方便随时调用,部分内容待后续补充 //main.cpp #include "sort.h" int main() { Sort sort_clas…