leetCode题解寻找最短字符路径
1、题目描述

2、分析
最简单的方案,对每一个字符,向两边寻找。
3、代码
 vector<int> shortestToChar(string S, char C) {
         vector<int> ans;
         for(size_t i = ; i < S.size();i++)
         {
             if(S[i] == C)
                 ans.push_back();
             else
             {
                 int j = i-;
                 while( j >=  && S[j] != C) j--;
                 int k = i+;
                 while( k <= S.size()- && S[k] != C) k++;
                 if( S[j] == C && S[k] == C)
                 {
                     ans.push_back( min(i-j,k-i) );
                 }else if( S[j] == C && S[k] != C )
                 {
                     ans.push_back( i-j);
                 }else{
                     ans.push_back( k-i);
                 }
             }
         }
         return ans;
     }
leetCode题解寻找最短字符路径的更多相关文章
- leetCode题解之根据字符出现的频率排序
		
1.题目描述 Given a string, sort it in decreasing order based on the frequency of characters. Example 1: ...
 - leetCode题解 寻找运动环
		
1.题目描述 Initially, there is a Robot at position (0, 0). Given a sequence of its moves, judge if this ...
 - C#版(击败100.00%的提交) - Leetcode 744. 寻找比目标字母大的最小字母 - 题解
		
C#版 - Leetcode 744. 寻找比目标字母大的最小字母 - 题解 744.Find Smallest Letter Greater Than Target 在线提交: https://le ...
 - 【LeetCode题解】3_无重复字符的最长子串(Longest-Substring-Without-Repeating-Characters)
		
目录 描述 解法一:暴力枚举法(Time Limit Exceeded) 思路 Java 实现 Python 实现 复杂度分析 解法二:滑动窗口(双指针) 思路 Java 实现 Python 实现 复 ...
 - leetcode题解#3:无重复字符的最长子串
		
leetcode题解:无重复字符的最长子串 题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: s = "abcabcbb"输出: 3 解释 ...
 - [LeetCode 题解]: Triangle
		
前言 [LeetCode 题解]系列传送门: http://www.cnblogs.com/double-win/category/573499.html 1.题目描述 Given a tr ...
 - LeetCode题解汇总(包括剑指Offer和程序员面试金典,持续更新)
		
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) LeetCode题解分类汇总(包括剑指Offer和程序员面试金典) 剑指Offer 序号 题目 难度 03 数组中重复的数字 简单 0 ...
 - LeetCode题解分类汇总(包括剑指Offer和程序员面试金典,持续更新)
		
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) 剑指Offer 数据结构 链表 序号 题目 难度 06 从尾到头打印链表 简单 18 删除链表的节点 简单 22 链表中倒数第k个节点 ...
 - 【LeetCode题解】二叉树的遍历
		
我准备开始一个新系列[LeetCode题解],用来记录刷LeetCode题,顺便复习一下数据结构与算法. 1. 二叉树 二叉树(binary tree)是一种极为普遍的数据结构,树的每一个节点最多只有 ...
 
随机推荐
- 使用openssh-clients的scp命令来传输文件
			
了解openssh-client是请参阅:https://blog.csdn.net/u010215256/article/details/53239905 了解scp命令来传输文件请参阅:https ...
 - Vue中router两种传参方式
			
Vue中router两种传参方式 1.Vue中router使用query传参 相关Html: <!DOCTYPE html> <html lang="en"> ...
 - 【Java并发编程】:守护线程与线程阻塞的四种情况
			
守护线程 JAVA中有两类线程:User Thread(用户线程).Daemon Thread(守护线程) 用户线程即运行在前台的线程,而守护线程是运行在后台的线程. 守护线程作用是为其他前台线程的运 ...
 - static变量生命周期小研究
			
A页面:定义一个普通类,类包含一个静态变量a,值为:111111111111111111 B页面:修改a的值为:22222222222222 C页面:用来查看a的值 1.在vs2008中,先打开B,再 ...
 - Postman—测试脚本
			
前言 对于Postman中的每个请求,我们都可以使用JavaScript语言来开发测试脚本.这也就好比单元测试.我们先看看Postman的相关界面: 编写测试脚本 Postman测试脚本本质上是在发送 ...
 - linux安装unzip及使用
			
安装完linux ,发现没有UNZIP,没办法,重新安装. 1.获取unzip源码 sudo wget http://downloads.sourceforge.net/infozip/unzip55 ...
 - 笛卡尔积算法的sku
			
1.笛卡尔积在形式上比较容易理解,但作为按钮操作DOM的时候,我的思路大体还可以,有些偏差.看到这种矩行方阵,首先联想到二维数组,事实上这种方法完全可以实现,但是在性能和编码速度上都有弊端. 2.以下 ...
 - chrome 下修改 agent 的方法
			
前言 这篇文章和 tiankonguse 的个人网站里的文章保持同步. 很早之前,在 chrome 下修改 agent 的方法是使用 chrome 插件. 后来 chrome 的某一个版本中自带这个功 ...
 - iOS 微信支付SDK与微信友盟分享两者同时集成时,出现的问题与解决之路。
			
这两天改版一个旧的APP,要旧貌换新颜,拿到app后进行编译,一直报下面的错误. 报不认识的符号名PayReq错误.奇怪,啥也没动就这样,真不知道给的包是不是本来就是个报错的工程. 不管怎样,要对它修 ...
 - C语言实现将彩色BMP位图转化为二值图
			
CTF做了图片的隐写题,还没有形成系统的认识,先来总结一下BMP图的组成,并通过将彩色图转为二值图的例子加深下理解. 只写了位图二进制文件的格式和代码实现,至于诸如RGB色彩和调色板是什么的一些概念就 ...