Swift一些数据结构题目的编码实现
题目:在字符串中找出连续最长的数字串,并把这个串的长度返回;如果长度相同,返回最后一个连续字符串
样例输入
abcd12345ed125ss123456789
abcd12345ss54321
样例输出
输出123456789,函数返回值9
输出54321,函数返回值5
函数原型:
int Continumax(String intputStr, StringBuffer outputStr)
输入参数:
String intputStr 输入字符串
输出参数:
StringBuffer outputStr 连续最长的数字串,如果连续最长的数字串的长度为0,应该返回空字符串
返回值:
int 连续最长的数字串的长度
实现代码:
func findLongestNum(str:Array<String>){
var maxLengthNum:Int = 0 //定义最长数字字符串的长度
var maxLengthNumStr:Array<String> = [] //用来保持最长字符串
var nowLengthNum:Int = 0 //用于储存当前连续数字字符的字符串长度
var nowLengthNumStr:Array<String> = [] // 用于储存当前连续的数字字符串
for (var i = 0 ; i < str.count ; i++){
if (str[i] < "9" || str[i] > "0"){ //当前的字符串为数字时
nowLengthNum++ //当前连续数字字符串长度
nowLengthNumStr.append(str[i]) // 把当前连续的数字字符串赋予临时的字符串数组中
if(nowLengthNum > maxLengthNum){ // 当当前的字符串长度大于最大字符串长度时,把当前的字符串长度以及字符串赋予最大连续数字字符串和长度
maxLengthNum = nowLengthNum
maxLengthNumStr = nowLengthNumStr
}
}
if (str[i] > "9" || str[i] < "0"){ //一旦出现非数字字符串,立即重置临时当前的连续字符串与连续字符串长度
nowLengthNum = 0
nowLengthNumStr = []
}
}
println(maxLengthNum)
println(maxLengthNumStr)
}
//验证
var str2 = ["a","b","c","d","1","2","3","4","5","s","s","2","3","4","4","5","3","4","5","3","4"]
findLongestNum(str2)
//************************************输出结果*****************************************//
"10"
["2","3","4","4","5","3","4","5","3","4"]
Swift一些数据结构题目的编码实现的更多相关文章
- 高可用Redis(一):通用命令,数据结构和内部编码,单线程架构
1.通用API 1.1 keys命令和dbsize命令 keys * 遍历所有key keys [pattern] 遍历模式下所有的key dbsize 计算Redis中所有key的总数 例子: 12 ...
- Redis入门到高可用(四)—— Redis的五种数据结构的内部编码
Redis的五种数据结构的内部编码
- Redis的五种数据结构的内部编码
type命令实际返回的就是当前键的数据结构类型,它们分别是:string(字符串).hash(哈希). list(列表).set(集合).zset(有序集合),但这些只是Redis对外的数据结构. 实 ...
- [SinGuLaRiTy] (树形)数据结构题目复习
[SinGuLaRiTy-1023] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 普通平衡树 题目描述 你需要写一种数据结构(可参考题目标 ...
- python基础语法、数据结构、字符编码、文件处理 练习题
考试范围 '''1.python入门:编程语言相关概念2.python基础语法:变量.运算符.流程控制3.数据结构:数字.字符串.列表.元组.字典.集合4.字符编码5.文件处理''' 考试内容 1.简 ...
- 程序员代码面试指南 IT名企算法与数据结构题目最优解
原文链接 这是一本程序员面试宝典!书中对IT名企代码面试各类题目的最优解进行了总结,并提供了相关代码实现.针对当前程序员面试缺乏权威题目汇总这一痛点,本书选取将近200道真实出现过的经典代码面试题,帮 ...
- UVA10562 数据结构题目
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...
- 程序员代码面试指南:IT名企算法与数据结构题目最优解
第1章栈和队列 1设计一个有getMin功能的栈(士★☆☆☆) 1由两个栈组成的队列(尉★★☆☆) 5如何仅用递归函数和栈操作逆序一个栈(尉★★☆☆) 8猫狗队列(士★☆☆☆)10用一个栈实现另一 ...
- Swift 函数式数据结构 - 链表
本文将使用Swift实现一个标准链表,在实现的过程中,遵守函数式编程的规则,无副作用,可以看到和C语言的实现还是有较大的差异. 预备知识 enum 的各种用法 swift的基本的模式匹配( patte ...
随机推荐
- 设置dos窗口的背景色与前景色
在dos中输入help会列出各种命令,其中有一个color命令可以用来设置当前窗口的前景色和背景色,输入help color会列出使用方法,内容如下: 设置默认的控制台前景和背景颜色. COLOR [ ...
- google closure--继承模块一:goog.inherits()
最近在项目是使用了google closure框架,深入研究了一下源码,先从最简单的继承系统吧. 废话不多说,closure继承模块主要有2个API: goog.inherits(childCtor, ...
- Java泛型学习笔记 - (二)泛型类
1. 我们先写一个没有泛型的类Box: public class Box { private Object obj; public Box() {} public Object getObj() { ...
- AJAX JSONP源码实现(原理解析)
关于JSONP以及跨域问题,请自行搜索. 本文重点给出AJAX JSONP的模拟实现代码,代码中JSONP的基本原理也一目了然. <html xmlns="http://www.w3. ...
- centos7网络设置
1.设置虚拟机网络连接方式 2.启动改为从驱动启动 3.启动虚拟机,使用命令 ip addr 查看ip,发现网卡配置为 eno16777736 如果找不到网卡配置文件,请返回安装过程,查看是否正确选择 ...
- 利用CSOM向列表添加文件夹
博客地址:http://blog.csdn.net/FoxDave 本文只为记录一下这个小细节,不会过多赘述,开发可以看懂. 如果想向一个列表或库中添加文件夹,平时我们自然想到的是list.ro ...
- thinkPHP(待更新)
一些函数 1. set_include_path().get_include_path() .PATH_SEPARATOR 设置php加载的路径 2. register_shutdown_func ...
- Android实现Layout缩放动画
最近看到Any.do的缩放效果很酷,看到一篇讲Layout缩放动画实现的文章,记录一下: http://edison-cool911.iteye.com/blog/704812
- [转]程序员自己写的神器 MonoDevelop 4 (Xamarin Studio) Debugging for Unity
原文地址 http://www.cliffordroche.ca/monodevelop-4-xamarin-studio-debugging-in-unity/ MonoDevelop 4 (Xam ...
- 【Learning Python】【第四章】Python代码结构(一)
这一章的主旨在于介绍python的代码结构 缩进 在很多的编程语言中,一般{}用于控制代码块,比如以下的一段C代码 if(var <= 10) { printf("....." ...