题解 P2676 【超级书架】
这题就只是一个从大到小的排序而已,用"sort"函数
再用"while"判断奶牛塔的高度是否比书架高度要高
送上代码:
#include<bits/stdc++.h>
using namespace std;
int cmp(int a,int b)
{
这是悦乐书的第322次更新,第344篇原创
01 看题和准备
今天介绍的是LeetCode算法题中Easy级别的第192题(顺位题号是824)。给出句子S,由空格分隔的单词组成。每个单词仅由小写和大写字母组成。我们想将句子转换为"Goat Latin"(一种类似于Pig Latin的伪造语言)。
山
1.使用快慢指针,fast=fast.next.next,slow=slow.next,若链表存在环,那么fast和slow一定会相遇,相遇的节点在环内,接下来需要确定环的入口。
2.如图,假设L= 链表总长 - 环的长度c,x为slow走过的长度 - L,指针在圆点相遇,slow走了L+
@TOC
二叉树模型
二叉树是树的一种应用,一个节点可以有两个孩子:左孩子,右孩子,并且除了根节点以外每个节点都有一个父节点。当然这种简单的二叉树不能解决让树保持平衡状态,例如你一直往树的左边添加元素,就会导致查找效率的减慢。,如何解决这个问题,下一篇文章再说。
二叉树的实现
二叉树的实现类
imp
题目描述
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。
n<=39
解法1 递归
解题前先简单说明一下斐波那契数列,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……,因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故
以下我说的排序算法都是说的从小到大排序
1.插入排序
1 insertSort(int a[]){
2 int length = a.length;
3 int b[] = new int [length+1];
4 for (int i=0;i<a.le
一、分析
队列是一种先进先出的线性表,它只允许在表的一端进行插入,而在另一端删除元素。允许插入的一端称为队尾,允许删除的一端称为队头。
循环队列是一种以顺序存储结构表示的队列,为了解决“假溢出”问题而将它设计成头尾相接的循环结构,它的基本操作如下:
1、
这是悦乐书的第323次更新,第346篇原创
01 看题和准备
今天介绍的是LeetCode算法题中Easy级别的第193题(顺位题号是830)。在由小写字母组成的字符串S中,那些相同的连续字符会组成集合。例如,诸如S =“abbxxxxzyy”的字符串具有集合“a”,“bb”,“xxxx”,“z”和
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
解法1
首先对这道题,我们可以通过找规律来解
一只青蛙可以跳上1级台阶,也可以跳上2两级台阶
当n = 1时,有1种跳法
当n = 2时,有2种跳法
当n = 3时,有3
一、分析
二叉树是n个结点所构成的集合,它或为空树,或为非空树。对于非空树,它有且仅有一个根结点,且除根结点以外的其余结点分为两个互不相交的子集,分别称为左子树和右子树,它们本身又都是二叉树。
显而易见,二叉树具有递归的性质,因此表示二叉树的结点至少要包含3个域:数据域、
题目大意:给出一个串(S),(q)次询问每次询问字符串(T)不在(S[l,r])出现的本质不同的子串数目。
0.68
有条件(l=1,r=|S|)。考虑(SAM_T)上的parent树的结构特点,不难可以得出:若设(lim_i)为(T[1,i])在(S)中出现的最长后缀长度(在(SAM_S)上直接跑
这是悦乐书的第324次更新,第347篇原创
01 看题和准备
今天介绍的是LeetCode算法题中Easy级别的第194题(顺位题号是832)。给定二进制矩阵A,我们想要水平翻转图像,然后反转它,并返回结果图像。
水平翻转图像意味着图像的每一行都是相反的。 例如,水平翻转[1,1,0]会产生[0,1
一、分析
队列是一种先进先出的线性表,它只允许在表的一端进行插入,而在另一端删除元素。允许插入的一端称为队尾,允许删除的一端称为队头。
链队是指采用链式存储结构实现的队列,它的基本操作如下:
1、初始化链队
2、销毁链队
算法题:整数排成一排求最大值
题目描述
【编程题】丈母娘的考验
题目ID:1136
【问题描述】小豪和女友恋爱数年,终于要修成正果了。今天,他将以准女婿的身份去女友家,唉呀,忐忑不安。
丈母娘一见小豪,嗯嗯,果然是传说中的高富帅,不错不错!
额额额,等会,这孩子不会是红漆马桶吧?长得好看,可是一肚子
目录
题目描述
解法1实现代码
解法2实现代码
解法3实现代码
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求
public class Solution {
/**
* @param s1: A string
* @param s2: A string
* @param s3: A string
*
import java.util.Arrays;
public class Lint55 {
/*
* 比较两个字符串A和B,确定A中是否包含B中所有的字符。字符串A和B中的字符都是 大写字母
* 注意事项:在 A 中出现的 B 字
怎么做的??
考虑至少有k组人在讨论cxk,给他们按位置的因数是C(n-3k,k)
剩下n-4k个位置,设第i类人物出现了di个,
满足d0+d1+d2+d3=n-4k,di+k<=pi,pi是第i类任务的总数
容易发现给这些人排位置的因数是(n-4k)!/(d0!d1!d2!d3!)
上边这
propositional variables (or statement variables),
letters used for propositional variables are p, q, r, s, . . . . The truth value of a propositi
* 数组排序(冒泡排序)* * 冒泡排序: 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处* * 选择排序 : 从0索引开始,依次和后面元素比较,小的往前放,第一次完毕,最小值出现在了最小索引处* * * [1,3,9,5,7] --> 排序 --> [1,3,5