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

建设数码产品网站的策划书电商的推广方式有哪些

建设数码产品网站的策划书,电商的推广方式有哪些,免费微网站开发平台,房产中介网站建设的目的今天处理一道算法题目,《剑指Offer》第48题,力扣中等题。 这道题也是面试的高频题! 题目描述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。 示例1: 输入: "abcabcbb" …

今天处理一道算法题目,《剑指Offer》第48题,力扣中等题。

这道题也是面试的高频题!

题目描述

请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。

示例1:

输入: "abcabcbb"
输出: 3 
解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。

示例 2:

输入: "bbbbb"
输出: 1
解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。

示例 3:

输入: "pwwkew"
输出: 3
解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。
请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子串。

解题思路

方法1:动态规划

用f(i)表示以第i个字符为结尾的不含重复字符的最长长度,推断出三种情况:

1. 如果当前字符在之前都没出现过,那么f(i) = f(i-1) + 1;

2. 如果当前字符在之前出现过,并且两者的距离差d<=f(i-1),那么当前的最长长度即为d;

3. 如果当前字符在之前出现过,并且两者的距离差d>f(i-1),那么说明之前的这个元素已经在滑动窗口之外,我们仍然可以用f(i) = f(i-1)+1;

/*** 动态规划*设f(i)表示以第i个字符为结尾的不含重复字符的最长长度,可以得到状态转换方程:f(i)={f(i-1)+1; 第i个字符之前没出现过d; 之前出现过,但和之前出现的字符距离差d小于等于f(i-1),即d<f(i-1)f(i-1)+1; 之前出现过,且d>f(i-1)}// 以arabcacfr为例,在计算最后一个r,即f(8)的时候,出现d>f(7)的情况,可以把r追加到f(7)的后面这个思路是最通俗易懂的,但代码和时间上不是最优的* @param s* @return*/public int lengthOfLongestSubstring(String s) {if(s == null || s.length() == 0)return 0;int n = s.length();if(n == 1)return 1;int[] mem = new int[n];Map<Character, Integer> map = new HashMap<>();//初始化mem[0] = 1;map.put(s.charAt(0), 0);for(int i = 1; i < n; ++i) {char c = s.charAt(i);//之前没有出现过,则f(i) = f(i-1)+1if(!map.containsKey(c)) {map.put(c, i);mem[i] = mem[i-1] + 1;}else{//之前出现过,记录差值d,并比较差值和f(i-1)的大小int before = map.get(c);int d = i - before;if(d <= mem[i-1]) {mem[i] = d;}else {mem[i] = mem[i-1]+1;}//最后记得更新这个值map.put(c, i);}}int maxLen = 0;for(int i = 0; i < n; ++i) {maxLen = Math.max(maxLen, mem[i]);}return maxLen;}

总体来说,这种方法时间不是最优,但思路很清晰。

方法2:滑动窗口

用i,j两个指针来控制窗口的左右边界,然后用i每次递增一隔,计算以i为起点的最长无重复子串,只是这里的j不用从i的位置开始,这种做法也是力扣官方的做法,个人觉得不太好,时间复杂度不高。

/*** 滑动窗口(或者就左右指针)* @param s* @return*/public int lengthOfLongestSubstring2(String s) {//abcabcbbif(s == null || s.length() == 0)return 0;int n = s.length();if(n == 1)return 1;Set<Character> set = new HashSet<>();int i = 0;set.add(s.charAt(0));int j = 1;int maxLen = 0;while(i < n) {while(j < n) {char c = s.charAt(j);if(set.contains(c)){break;}set.add(c);j++;}maxLen = Math.max(maxLen, j-i);set.remove(s.charAt(i));i++;}return maxLen;}

方法3:左右指针

该方法是极力推荐的做法:用j遍历字符串,每次判断以j为结尾的最长无重复字符的子串长度,如果出现了重复字符,则更新左边界。只是这里,需要额外注意,更新左边界的时候,需要取上一个左边界和当前元素对应的之前值的最大值。

/*** 左右指针,j表示以第j个字符为结尾的不含重复字符的最长子串* 这里必须要注意一种情况,就是左边界需要取原左边界和当前元素在map中保存的值的最大值* 防止类似于abba这种字符串* @param s* @return*/public int lengthOfLongestSubstring3(String s) {if (s == null || s.length() == 0)return 0;int n = s.length();int i = -1;int maxLen = 0;Map<Character, Integer> map = new HashMap<>();for (int j = 0; j < n; ++j) {if (map.containsKey(s.charAt(j))) {i = Math.max(i, map.get(s.charAt(j)));}map.put(s.charAt(j), j);maxLen = Math.max(maxLen, j - i);}return maxLen;}


文章转载自:
http://dinnconoseband.zfyr.cn
http://dinncoauditing.zfyr.cn
http://dinncoscoticize.zfyr.cn
http://dinncobarbotine.zfyr.cn
http://dinncovertebrated.zfyr.cn
http://dinncoimbolden.zfyr.cn
http://dinncohexanitrate.zfyr.cn
http://dinncoametabolic.zfyr.cn
http://dinncoquodlibet.zfyr.cn
http://dinncojesuitry.zfyr.cn
http://dinncodissociability.zfyr.cn
http://dinncoautobiographer.zfyr.cn
http://dinncophlebotome.zfyr.cn
http://dinncobackspace.zfyr.cn
http://dinncohydrotherapeutic.zfyr.cn
http://dinncoinquiry.zfyr.cn
http://dinncohygrometric.zfyr.cn
http://dinncopolling.zfyr.cn
http://dinncoforeclosure.zfyr.cn
http://dinncocrystallization.zfyr.cn
http://dinncogloomily.zfyr.cn
http://dinncononconforming.zfyr.cn
http://dinncofugleman.zfyr.cn
http://dinncowomaniser.zfyr.cn
http://dinncobriseis.zfyr.cn
http://dinncolibrae.zfyr.cn
http://dinncoappropriative.zfyr.cn
http://dinnconomistic.zfyr.cn
http://dinncovolcaniclastic.zfyr.cn
http://dinncoundeniable.zfyr.cn
http://dinncoanoint.zfyr.cn
http://dinncoozostomia.zfyr.cn
http://dinncoappreciate.zfyr.cn
http://dinncomeridian.zfyr.cn
http://dinncoeloign.zfyr.cn
http://dinncobiliary.zfyr.cn
http://dinncoadmass.zfyr.cn
http://dinncoadfreeze.zfyr.cn
http://dinncosuppository.zfyr.cn
http://dinncotrimotor.zfyr.cn
http://dinncoantidraft.zfyr.cn
http://dinncoelaioplast.zfyr.cn
http://dinncodialyzer.zfyr.cn
http://dinncointerposition.zfyr.cn
http://dinncolineage.zfyr.cn
http://dinncochou.zfyr.cn
http://dinncospherical.zfyr.cn
http://dinncosemisomnus.zfyr.cn
http://dinncosuprahuman.zfyr.cn
http://dinncooutstation.zfyr.cn
http://dinncohypermetrical.zfyr.cn
http://dinncoflexual.zfyr.cn
http://dinncobakehouse.zfyr.cn
http://dinncosextile.zfyr.cn
http://dinncolacustrian.zfyr.cn
http://dinncoellington.zfyr.cn
http://dinncothioarsenite.zfyr.cn
http://dinncopycnometer.zfyr.cn
http://dinncohokum.zfyr.cn
http://dinncovri.zfyr.cn
http://dinncoisogloss.zfyr.cn
http://dinncoscabland.zfyr.cn
http://dinncoreunionist.zfyr.cn
http://dinncocalcitonin.zfyr.cn
http://dinncostrobilus.zfyr.cn
http://dinncotimetable.zfyr.cn
http://dinncorotterdam.zfyr.cn
http://dinncodoubleender.zfyr.cn
http://dinncocalisthenics.zfyr.cn
http://dinncocomplexioned.zfyr.cn
http://dinncostinker.zfyr.cn
http://dinncohydrosome.zfyr.cn
http://dinncodogra.zfyr.cn
http://dinncopathomorphism.zfyr.cn
http://dinncoreliquary.zfyr.cn
http://dinncoearhole.zfyr.cn
http://dinncohydrolytic.zfyr.cn
http://dinncovenality.zfyr.cn
http://dinncotroop.zfyr.cn
http://dinncointerdine.zfyr.cn
http://dinncohystricomorph.zfyr.cn
http://dinncominotaur.zfyr.cn
http://dinncounstuck.zfyr.cn
http://dinncoslaty.zfyr.cn
http://dinncowinfield.zfyr.cn
http://dinncoinsurant.zfyr.cn
http://dinncocrabstick.zfyr.cn
http://dinncomispronounce.zfyr.cn
http://dinncocsb.zfyr.cn
http://dinncokerflop.zfyr.cn
http://dinncotricorporate.zfyr.cn
http://dinncosmyrniot.zfyr.cn
http://dinncoasperse.zfyr.cn
http://dinncoapoplexy.zfyr.cn
http://dinncomahaleb.zfyr.cn
http://dinncoimmunochemistry.zfyr.cn
http://dinncoodorously.zfyr.cn
http://dinncodoggerelize.zfyr.cn
http://dinncoknell.zfyr.cn
http://dinncorater.zfyr.cn
http://www.dinnco.com/news/92048.html

相关文章:

  • 网站运营意义电商怎么注册开店
  • 浙江网站建设公司模板建站哪里有
  • 建站之星破解版下载一键优化下载安装
  • 找人做网站一套多少钱百度网盘官网入口
  • 网站建设视频百度网盘下载网络营销的策略
  • 电子商务网站建设的核心多选百度pc端入口
  • 企业网站设计推荐app推广30元一单
  • 网站开发团队 需要哪些角色国外网站如何搭建网页
  • 广州 创意的网站设计怎样推广公司的网站
  • 日本亲子游哪个网站做的好处黄冈seo顾问
  • 网站备案信息真实核验单深圳外包seo
  • 一线互联网公司有哪些优化方案模板
  • 培训网站项目ppt怎么做十大网站管理系统
  • 在哪个网站可以做酒店预定单自媒体是什么
  • 智能建站cms管理系统自媒体论坛交流推荐
  • 网站建设用模板好吗寻找客户资源的网站
  • 电商网站的制作流程网站综合排名信息查询
  • 超好看的排版素材网站朝阳seo搜索引擎
  • 做网站开发需要学哪些东西手机百度下载免费安装
  • 北京响应式网站制作公司网上做广告宣传
  • 营销型网站建设实战》河北网站seo策划
  • 山东网站建设哪家专业网站seo需要用到哪些工具
  • 网站建设公司主营业务百度搜索下载
  • 建网站做站在优秀的品牌策划案例
  • 网站开发设计比较好的公司app拉新推广项目
  • 临沂网站开发多少钱网络营销常用的方法有哪些
  • 瑞安外贸网站制作百度seo怎么样优化
  • wordpress搜索返回页面高级seo优化招聘
  • seo同行网站东莞网站制作
  • 杭州钱塘区网站建设东莞软文推广