队列是什么? 队列是一种先进先出的数据结构。 跟栈一样,队列也是一种操作受限的线性表数据结构。 用数组实现一个队列 如果用数组来实现一个栈,我们只需要一个栈顶指针就够了。但是队列需要两个指针:一个是 head 指针,指向队头;一个是 tail 指针,指向队尾。 下面用代码来实现一个数组队列: 1
算法描述 已知道n种物品和一个可容纳c重量的背包,第i种物品的重量为wi,价值为pi,装包的时候可以把物品拆开(即可只装每种物品的一部分),设计如何装包,使装包所得整体的价值最高? 算法思路 首先,我们要知道,n种物品以及他们对应的价值,都是由用户输入的 我们使用贪心算法,每一步取最大效益的物品
这是悦乐书的第147次更新,第149篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第6题(顺位题号是20),给定一个只包含字符'(',')','{','}','['和']'的字符串,确定输入字符串是否有效。输入的字符串必须使用相同类型的括号关闭左括号,并且以正确的顺序关
分析 难度 易 来源 https://leetcode.com/problems/sqrtx/description/ 题目 Implement int sqrt(int x). Compute and return the square root of x, where x is guarante
分析 难度 易 来源 https://leetcode.com/problems/add-binary/description/ 题目 Given two binary strings, return their sum (also a binary string). The input strin
这是悦乐书的第146次更新,第148篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第5题(顺位题号是14),给定一个随机的字符串数组,查找这些字符串元素的公共前缀字符串,如果没有则返回空串。其中,字符串数组中的元素都是由小写字母a-z之间随机组合而成。例如: 输入:[
【CF486E】LIS of Sequence题解 题目链接 题意: 给你一个长度为n的序列a1,a2,...,an,你需要把这n个元素分成三类:1,2,3: 1:所有的最长上升子序列都不包含这个元素 2:有但非所有的最长上升子序列包含这个元素 3:所有的最长上升子序列都包含这个元素 输入格式: 第
目录 1 问题描述 2 解决方案   1 问题描述 编程实现两个复数的运算。设有两个复数 和 ,则他们的运算公式为:  要求:(1)定义一个结构体类型来描述复数。  (2)复数之间的加法、减法、乘法和除法分别用不用的函数来实现
题目描述: 解题思路:    此题是要在不用操作符+和-的情况下,求两个整数的和。既然不能用内置的加减法,那就只能用位运算(&, |, ~, ^)。 (1)异或(xor):异或的数学符号为“⊕”,计算机符号为“xor”。   异或也叫半加运算,其运算法则相当于不带进位的二进制加法:异或的运
目录 1 问题描述 2 解决方案 2.1 动态规划法   1 问题描述 给定一排n个硬币,其面值均为正整数c1,c2,...,cn,这些整数并不一定两两不同。请问如何选择硬币,使得在其原始位置互不相邻的条件下,所选硬
题目描述: 解题思路:   此题的思路简单,下面的代码用StringBuilder更加简单,注意最后的结果要反转过来。【LeetCode415】Add Strings的解法和本题一模一样。 java代码: 1 public class LeetCode67 { 2 public st

推荐文章