如题:
写一个函数,实现对字符串的压缩
String cypte(String data){}
例如:
cypte("AABBBCCCCDDDDAAAAAJJJJJ")返回2A3B4C4D5A5J
cypte("xxxxxxxyyyyyyyyyyyyyykkk")返回7x14y3k
cypte("ABBBDDGGHHHH")返回A3B2D2G4H
我这里有一个参考实现,希望各位拍砖
static void cypte(String s){ StringBuilder sb=new StringBuilder(); int l=s.length(); char t=' '; if(l==1){ System.out.println(s); }else{ for(int i=0;i<l;){ int k=i+1; int c=1; while(k<l&&(s.charAt(i)==s.charAt(k))){ t=s.charAt(i); c++; k++; } if(k==i+1){ t=s.charAt(i); } i+=c; if(c==1){ sb.append(t); }else{ sb.append(c).append(t); } } System.out.println("压缩结果为\t"+sb); } }
相关推荐
本题目的目标是实现一个字符串快速压缩算法,它将连续重复的字符进行压缩,遵循"字符重复次数+字符"的格式。例如,"xxxyyyyyyz"会被压缩成"3x6yz"。下面我们将详细讨论这个算法的实现及其涉及的关键知识点。 首先,...
标题中的“Code_笔试题_字符串压缩_”指的是一个与编程相关的笔试题目,重点在于实现字符串的压缩功能。这类问题通常出现在技术面试或招聘过程的笔试试题中,旨在考察应聘者的编程能力和对数据结构的理解。 描述中...
在DELPHI中,我们可以利用各种压缩库或算法来实现字符串的压缩。例如,ZLib库提供了一套完整的压缩和解压缩功能,包括常用的Deflate算法。以下是一个简单的DELPHI使用ZLib压缩RTF字符串的例子: 首先,你需要引入...
在Python编程语言中,字符串压缩是一个常见的操作,特别是在处理大量文本数据时,为了节省存储空间,我们会使用压缩算法。本节我们将深入探讨Python中的字符串压缩技术,并以标题"Python123之字符串压缩#134865"为...
标签中的“源码”意味着可能涉及具体实现代码,而“工具”可能是指使用某种编程工具或者库(如Ruby的`zlib`库)来实现字符串压缩功能。对于学习和开发,理解这些基础概念并能实际操作是十分重要的,特别是在处理...
QuickLZ是一款高效的开源压缩库,它在Cocos2d-x框架中被广泛用于字符串压缩。Cocos2d-x是一个跨平台的2D游戏开发框架,支持多种操作系统,包括iOS、Android、Windows等。字符串压缩在游戏开发中非常重要,因为它可以...
本文将深入探讨C#语言中三种实现字符串压缩与解压的方法。 1. **GZipStream** GZipStream是.NET Framework提供的用于压缩和解压缩数据的类,它是基于Gzip文件格式的。要使用GZipStream,我们需要创建一个...
总之,ZLIB库是字符串压缩和解压缩的一个强大工具,其背后的DEFLATE算法结合了两种高效的方法,既能有效压缩数据,又易于实现。在处理大量文本数据时,合理利用ZLIB库可以显著改善系统性能,降低存储成本。了解和...
该库的设计思路是将字符串压缩和后缀数组压缩相结合,以创建一个既节省空间又高效的搜索工具。其核心在于压缩后缀数组的构建和查询过程,通过高效的压缩算法降低存储需求,然后利用特定的压缩后缀数组数据结构进行...
Python提供了多种内置库和第三方库来实现字符串的压缩和解压缩功能。以下是关于Python字符串压缩的一些关键知识点: 1. **zlib库**: - `zlib`是Python内置的库,它提供了对`DEFLATE`算法的压缩和解压缩功能,这是...
根据给定的信息,我们需要实现一个C语言函数`void fun(char *s,char *t,char *p)`,该函数的功能是:将未在字符串`s`中出现、而在字符串`t`中出现的字符形成一个新的字符串并存储在指针`p`指向的空间内。新字符串中...
利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)...
`cpp-smaz` 是一个基于 `Smaz` 的小型字符串压缩库,专为C++编程语言设计。`Smaz` 是由Paolo Bergantino开发的一个开源压缩算法,它专注于对小字符串进行高效压缩。在处理大量文本数据时,尤其是在内存有限或速度至...
以下是一个简单的Deflater压缩字符串的步骤: 1. 创建一个Deflater对象,通常设置一个压缩级别(1-9),1是最快速但压缩率低,9是最慢但压缩率高。 2. 将要压缩的字符串转换为字节数组,例如使用`getBytes()`方法。...
在编程中,字符串倒序是指将一个字符串中的字符顺序反转,例如原始字符串"Hello"倒序后变为"olleH"。在LabVIEW中,这可以通过数组操作或字符串函数实现。 描述中的链接指向了一篇CSDN博客文章,详细介绍了实现该...
在本文中,我们将深入探讨MFC(Microsoft Foundation Classes)库中的字符串操作,通过一个实际的Demo程序来展示如何处理各种字符串问题。MFC是微软提供的一套C++类库,用于构建Windows应用程序,它提供了丰富的功能...
标题中的“Go-一个简单而快速的Go库用于将输入字符串模糊匹配到目标字符串列表”表明,这是一个基于Go语言开发的库,其主要功能是实现输入字符串与一系列目标字符串之间的模糊匹配。在文本处理领域,模糊匹配是一种...
本主题聚焦于在Delphi环境下使用gZip进行字符串解压,这涉及到两个主要的知识点:一是gZip压缩算法,二是Delphi编程语言中的解压实现。 首先,我们来了解gZip压缩算法。gZip是一种广泛使用的数据压缩格式,基于...
总结来说,Bentley/McIlroy 长字符串压缩算法是数据压缩领域的一个经典方法,其Go语言实现提供了方便的工具供开发人员在实际项目中使用。通过阅读和研究 bm-master 压缩包中的源代码,不仅可以学习到这个算法的原理...
本题目要求实现一个字符串压缩功能,即将字符串中连续出现的相同字符压缩成数字加字符的形式。例如,对于字符串 "xxxyyyyyyz",压缩后应得到 "3x6yz"。 **函数接口**: ```cpp void stringZip(const char *...