当前位置: 首页 > wzjs >正文

青岛网络建站网站推广百度seo收录软件

青岛网络建站网站推广,百度seo收录软件,套模板网站价格,注册公司一般流程题目一:青蛙跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。 求该青蛙跳上一个 n 级的台阶总共有多少种跳法。 解题步骤 选用递归的方法解决该问题! 使用递归只需要考虑清楚边界条件/终止条件,再写清楚单层…

题目一:青蛙跳台阶

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。
求该青蛙跳上一个 n 级的台阶总共有多少种跳法。

解题步骤

选用递归的方法解决该问题!

使用递归只需要考虑清楚边界条件/终止条件,再写清楚单层循环逻辑

剩下的交给程序就好啦!

那么如果顺着一级一级去想会非常麻烦,

不妨倒着想想,青蛙以什么姿势跳上第n级台阶

是优雅的迈了一步?还是急速蹦了两级?

以jump(n)为求步数的函数,

根据该思路则有:jump(n)=jump(n-1)+jump(n-2)

此外jump(0)=1,jump(1)=1

这是按照规律得到的边界条件

整合到一起就是

int jump(int n){if(n==0 || n==1){return 1;}return jump(n-1)+jump(n-2);
}

那么主函数里只需要加一些输入输出,再用上我们的jump就好啦

int main(){int n;cin>>n;cout<<jump(n);return 0;	
}

code

#include<bits/stdc++.h>
using namespace std;int jump(int n){if(n==0 || n==1){return 1;}return jump(n-1)+jump(n-2);
}
int main(){int n;cin>>n;cout<<jump(n);return 0;	
}

 


 

题目二:丢失的数字

题目描述

268. 丢失的数字 - 力扣(LeetCode)

给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。

解题步骤

1.小笨方法

利用排序和数组下标

排序后数组按照大小顺序排列,数组内元素值与数组下标一致

遍历数组依次比对检查

不符合就返回

还有一种情况是缺少最后一个,故在循环外return该值,即nums.size()

class Solution {
public:int missingNumber(vector<int>& nums) {sort(nums.begin(),nums.end());//对整个数组做排序for(int i=0;i<nums.size();i++){//利用下标检查if(nums[i] !=i)//不符合则返回该下标return i;}return nums.size();//都符合那就是少了最后一个!}
};

2.逆向思维+数学方法

反过来想如果没少,那么这个无序数组有什么特点?

虽然没有顺序但它完全就是一个等差数组,等差数组可以使用求和公式得到所有值的和

那么与当前数组的和取差值,就是丢失的数字

需要注意的是该数组首项为0,尾项为n,一共n+1个!!!

int n=nums.size();//获取数组大小
int sum=n*(n+1)/2;//没少的数组之和,首项为0,尾项为n,一共n+1个!
int s=0;//当前数组之和
for(int i=0;i<n;i++){s=s+nums[i];//累加统计
}
return sum-s;//相减得出丢失值

 也可以用accumulate函数替代遍历累加求和的代码

int s=accumulate(nums.begin(),nums.end(),0);
参数说明:
  • vec.begin():起始迭代器。

  • vec.end():结束迭代器。

  • 0:初始值(求和的起点)
     


 

 题目三:只出现一次的数字

题目描述

136. 只出现一次的数字 - 力扣(LeetCode)

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。

解题步骤

如果正向去做这题,那么就是进行遍历,统计每一个元素出现次数,对出现次数为1的元素进行返回,但这样占用空间,不符合线性时间复杂度

那么如何逆向想一想呢?从找一次到出现一次的元素,变为任务是消去出现两次的元素

每个元素均出现两次可以进行什么操作配对消除呢?

采用位运算中的异或运算,两者相同为0,不同为1

对nums数组中的所有元素逐个进行异或,最终结果就是只出现一次的元素

code

class Solution {
public:int singleNumber(vector<int>& nums) {int temp=nums[0];for(int i=1;i<nums.size();i++){temp^=nums[i];}return temp;}
};

http://www.dtcms.com/wzjs/209704.html

相关文章:

  • 北京智能网站建设平台推广方案的内容有哪些
  • wordpress门户源码学seo哪个培训好
  • wordpress官网主题上海网络seo公司
  • 优质公司网站推广引流吸引人的标题
  • 昆明做网站哪家好网络公司名字大全
  • crm系统解决方案网站排名优化外包
  • 网站开发与建设个人总结怎样建立自己网站
  • jsp个人网站设计搜狗搜索引擎优化指南
  • 新闻网站怎么做缓存南京seo新浪
  • 大型 网站的建设 阶段裤子seo标题优化关键词
  • 大型网站二次开发方案专业的网页制作公司
  • 做网站的接口是意思优化推广网站seo
  • 专门做鞋子的网站在线子域名二级域名查询工具
  • 重庆 网站定制网站数据
  • 做优惠卷网站品牌全案策划
  • 焦作商城网站建设seo公司排名教程
  • 简单的网站开发百度高级搜索技巧
  • 苏州手机网站建设多少钱乔拓云建站平台
  • 自己做网站可以赚钱么杭州新站整站seo
  • 网页制作基础教程素材seo网站推广公司
  • seo网站建设价格手机seo快速排名
  • wordpress增加logoseo推广效果怎么样
  • 旅游网站做模板素材网页设计制作软件
  • 上海城乡建设与管理委员会网站浏阳廖主任打人案
  • 凡科一个注册做2个网站网站页面禁止访问
  • 织梦手机端网站怎么做网页设计流程步骤
  • 一站式网站管家seo实战技巧100例
  • 房地产小程序开发seo主要做什么工作内容
  • 义乌网站建站百度seo优化公司
  • 手机网站建设开什么类型的票seo 优化案例