CN101452460B - 歌词排序系统及其方法 - Google Patents

歌词排序系统及其方法 Download PDF

Info

Publication number
CN101452460B
CN101452460B CN2007101955039A CN200710195503A CN101452460B CN 101452460 B CN101452460 B CN 101452460B CN 2007101955039 A CN2007101955039 A CN 2007101955039A CN 200710195503 A CN200710195503 A CN 200710195503A CN 101452460 B CN101452460 B CN 101452460B
Authority
CN
China
Prior art keywords
key assignments
time tag
read
lyrics
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2007101955039A
Other languages
English (en)
Other versions
CN101452460A (zh
Inventor
邱全成
代林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pang Junping
Ye Meirong
Original Assignee
Inventec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inventec Corp filed Critical Inventec Corp
Priority to CN2007101955039A priority Critical patent/CN101452460B/zh
Publication of CN101452460A publication Critical patent/CN101452460A/zh
Application granted granted Critical
Publication of CN101452460B publication Critical patent/CN101452460B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Warehouses Or Storage Devices (AREA)

Abstract

一种歌词排序的系统及其方法,其通过将歌词档中的各行歌词对应至该行中的时间标签后,通过读取各个时间标签藉以判断出欲排列的时间标签的区间,再将该时间标签排列至该区间中,由此解决先前技术中所存在的没有适合用来排序歌词档的排序演算法的问题,藉此可以达成有效率的排序歌词档的功效。

Description

歌词排序系统及其方法
技术领域
一种歌词排序系统及其方法,特别是指一种基于判断新增元素的区段进行歌词排序的系统及其方法。
背景技术
在计算机科学与数学技术领域中,排序演算法是一种能依照特定顺序进行排序的一种演算法,上述的特定顺序常见的是数值顺序以及字典顺序。此外,排序演算法也用在处理文字歌词以及产生人类可读资料的输出结果,虽然大部分人认为这是排序演算法已经是一被解决的问题,但仍有改进现有排序演算法的新演算法在不断的被发明。目前的排序演算法中,主要可以分为两大类:一是使用大量的记忆体空间来增加排序的速度,例如常见的快速排序法(quick sort)等,另外一种则使用较少的记忆体空间来排序,但相对的排序速度较慢,这一种排序演算法常见的有气泡排序法(bubble sort)、插入排序法(insertion sort)等。
目前,处理文字歌词的输出结果的排序演算法大多只是针对已经有索引值的歌词进行排序,虽然在歌词档中的时间标签可以作为排序的索引值,但由于时间标签的放置位置是任意的,同一行歌词也可能存在多个时间标签,因此目前的排序法并不适合用于上述的歌词档的排序。
综上所述,可知先前技术中存在没有适用于LRC歌词档的排序演算法的问题,因此有必要提出改进的技术手段,来解决此一问题。
发明内容
有鉴于先前技术存在的问题,本发明遂揭露一种歌词排序系统及其方法,其中:
本发明所揭露的歌词排序的系统,其包括有:储存模块、对应模块、读取模块、排序模块、键值定义模块、比对模块、歌词排列模块,对应模块将储存模块中的歌词对应至各时间标签并由读取模块读出,键值定义模块定义被读出的数个时间标签为起始键值、中间键值以及结尾键值交由比对模块比对欲排序的时间标签落入哪两个键值之间的区段,再由排序模块将该区段进行排序,当所有的时间标签都排序完成后,由歌词排列模块排列与排序后的时间标签相对应的歌词,由此来解决先前技术所存在的问题。
本发明所揭露的歌词排序的方法,其包括有下列步骤:将歌词档中的各行歌词对应至该行所记录的各时间标签;读取与复数个键值的相同数量的时间标签,其中各键值包含起始键值、至少一中间键值、及结尾键值,且各时间标签对应于未排序的各歌词中;以特定顺序排列被读取的各时间标签;依据特定顺序将序列中的各时间标签依序对应至起始键值、各中间键值、及结尾键值,藉以将序列分为复数个区段;由未排序的各时间标签中读取其中之一;比对被读取的时间标签与各键值对应的已排序的时间标签,藉以判断被读取的时间标签所在的区段;比对被读取的时间标签与区段内的所有已排序的时间标签,藉以将被读取的时间标签排列至该区段的适当位置;于所有时间标签都排序后,依据时间标签的排列顺序排列与时间标签相对应的各歌词,其通过先将各歌词对应至各时间标签后,判断读入的时间标签落于何区间,再排序将读入的时间标签排列在该区间中最适合的位置藉以解决先前技术所存在的问题。
本发明所揭露的系统与方法如上,其与先前技术之间的差异在于本发明需先将各歌词对应至各时间标签,并只针对相邻的两个键值所形成的区间进行排序。通过上述的技术手段,本发明可以达成更有效率的排序歌词档的功效。
附图说明
图1是本发明所提的各键值示意图。
图2是本发明所提的歌词排序的系统架构图。
图3是本发明所提的歌词排序的方法流程图。
图4A是本发明实施例所提的LRC歌词档。
图4B是本发明实施例所提的排序中的LRC歌词序列示意图。
图4C是本发明实施例所提的排序中的LRC歌词序列示意图。
图4D是本发明实施例所提的排序完成的LRC歌词序列示意图。
具体实施方式
以下将配合图式及实施例来详细说明本发明的详细特征与实施方式,内容足以使任何熟习相关技艺者轻易地理解本发明解决技术问题所应用的技术手段并据以实施,及理解实现本发明可达成的功效。
在介绍本发明具体实施方式前,先对起始键值、中间键值及结尾键值进行解释,请参考图1,本发明的起始键值、中间键值及结尾键值的示意图,起始键值对应串列100的第一个元素,结尾键值对应串列100的最后一个元素,而对应串列100中第一个元素与最后一个元素之外的任何一个元素的键值则称为中间键值。
以下以图2本发明所提的歌词排序的系统架构图来说明本发明的系统运作。如图所示,本发明的系统含有储存模块210、对应模块220、读取模块230、排序模块240、键值定义模块250、比对模块260及歌词排列模块270。
储存模块210负责储存歌词档,其中,歌词档包含需要进行排序的歌词。
对应模块220负责将储存模块210中的歌词档的各行歌词对应至该行歌词所记录的各时间标签。由于一行歌词可能有多个时间标签,所以一行歌词也可能对应多个时间标签。
读取模块230负责读取数量与本发明所使用的键值(起始键值、中间键值、结尾键值)相同的时间标签,也就是说,若本发明使用一个起始键值、一个中间键值以及一个结尾键值,则读取模块230将读出三个时间标签,其中,歌词档中的各行歌词需先经由对应模块220对应到该行的时间标签后,经过对应的时间标签才会被读取模块230给读出;读取模块230更负责由未读取过的时间标签中读取一个未排序的时间标签。
排序模块240负责将读取模块230所读出的多个时间标签排列为特定顺序的序列;以及负责将读取模块230所读出的一个未排序的时间标签依据特定顺序排列至序列中的适当位置。其中,特定顺序是指对各个时间标签中的某文字或对某数字进行升幂或降幂排列。
键值定义模块250负责将排序模块240所排列的序列中的元素(时间标签)定义为起始键值、中间键值、及结尾键值。
比对模块260负责比对读取模块230所读出的时间标签与各键值所对应的时间标签,藉以判断被读取模块230所读出的时间标签所在的区段。
歌词排列模块270负责在所有的时间标签都排序完成后,依据排序完成的时间标签的顺序排列与时间标签相对应的各歌词。
接着请参照图3本发明所提的歌词排序的方法流程图,并结合图4A至图4DLRC歌词排序的一个实施例来具体说明本发明的运作系统与方法,但本发明并不以LRC歌词为限。
LRC歌词档是一种包含「时间标签(time tag)」的纯文字档案。LRC歌词档通过特别的程序可以用来实现卡拉OK功能,同时又能使用一般的文书处理软件查看或编辑。其中,时间标签为「[mm:ss]」或「[mm:ss.fff]」(分钟数:秒数)的形式,且分钟数与秒数须为非负整数,例如「[12:34]」。一般而言,一行歌词会有一个以上的时间标签,用来表示该行歌词在该时间标签的时间时,会在歌曲中被唱出,因此根据这些时间标签可以实现卡拉OK功能。而时间标签可以位于该行歌词中的任意位置。另外,使用LRC歌词档存放歌词时,各行歌词无须排序即可以被使用。
本实施例以两个中间键值为例,但本发明并不以两个中间键值为限。
由于LRC歌词档中的歌词并不一定是已经排序完成的顺序,因此当使用者使用某一数字装置开启LRC歌词档时,需要先将LRC歌词档中的各行歌词依据时间标签进行升幂排序,才可以显示给使用者,若使用者所使用的数字装置使用本发明来排序如图4A所示的LRC歌词档410,首先,对应模块220会至储存模块21 0中读取LRC歌词档410,并将LRC歌词档410中的各行歌词对应到各行所记录的时间标签中(步骤310),也就是说,第一行的「歌词一」会与时间标签「[01:49]」相互对应、第二行的「歌词二」会与时间标签「[00:27]」相互对应,依此类推,第十行的「歌词十」会与时间标签「[02:02]」相互对应,其中,由于第五行的「歌词五」有两个时间标签,因此时间标签「[01:32]」会对应到「歌词五」,而时间标签「[03:48]」也会对应到「歌词五」,因此,LRC歌词档中的十行歌词在对应后会产生11笔时间标签的资料。
在歌词档410中的各行歌词对应到各行所记录的时间标签(步骤310)后,若在本实施例中,本发明预定使用四个键值(两个中间键值,一个起始键值以及一个结尾键值)进行排序,则读取模块230会由对应模块220对应产生的11笔时间标签的资料中读取出前四笔的时间标签(步骤320),也就是「[01:49]」、「[00:27]」、「[02:38]」、「[04:56]」。
之后,如图4B所示,排序模块240会依据读取模块230所读出的四笔时间标签进行升幂排列(步骤330),藉以建立序列420,在排序模块240排序完成后,键值定义模块250将依序定义该序列中的元素(各时间标签)为起始键值、第一中间键值、第二中间键值以及结尾键值(步骤350)。
接着,读取模块230会继续由储存模块210中读取下一笔(第五笔)的时间标签(步骤360),也就是读取「[01:32]歌词五」,并由比对模块260将第五行歌词的时间标签[01:32]与各个键值相比较(步骤370),由于时间标签为[01:32],因此会落在起始键值[00:27]与第一中间键值[01:49]之间,也就是落在第一段落。
在比对模块260判断出第五笔的时间标签「[01:32]」落在第一段落后,排序模块240会将第五笔的时间标签与第一段落中的所有时间标签进行排序(步骤380),因此第五笔的时间标签将会被排列在起始键值所代表的时间标签与第一中间键值所代表的时间标签之间,使得序列420如图4C所示。
之后,读取模块230会再由储存模块210中读取第六笔的时间标签(步骤360),由于「歌词五」对应到两个时间标签,因此第六笔的时间标签是「歌词五」所对应的另一个时间标签「[03:48]」,并由比对模块260将第六笔的时间标签与各个键值相比较(步骤370),由于第六笔的时间标签为[03:48],因此会落入第二中间键值与结尾键值之间。
同样的,读取模块230会继续由储存模块210中读取第七笔的时间标签(步骤360),并由比对模块260将第七笔的时间标签与各个键值相比较(步骤370),由于第七笔的时间标签为「[01:16]」,因此会落在起始键值(即时间标签「[00:27]」)与第一中间键值(即时间标签「[01:49]」)之间,接着会由排序模块240将第七笔的时间标签与起始键值与第一中间键值之间的时间标签进行排序,由于第七笔的时间标签介于起始键值(时间标签「[00:27]」)与第五笔的时间标签「[01:32]」之间,因此第七笔的时间标签将被排序模块240排列在第五笔的时间标签与起始键值之间(步骤380)。
同理,第八笔、第十一笔的时间标签将会被比较模块260判断落在第二段落,而被排序模块240排列在第一中间键值与第二中间键值之间;第九笔、第十笔的时间标签将被比较模块260判断落在第三段落,而被排序模块240排列在第二中间键值与结尾键值之间,如此当所有的时间标签都排序完成后,歌词排列模块270将如图4D所示,将各行歌词依据相对应的时间标签的顺序排列成为序列420(步骤390)。
综上所述,可知本发明与先前技术之间的差异在于具有先将各行歌词对应到各时间标签后,判断读入的时间标签落于何区间,再排序该区间的时间标签,藉由此一技术手段可以解决先前技术所存在的没有适合用来排序LRC歌词档的排序演算法的问题,进而达成有效率的排序歌词档的技术功效。
事实上,本发明还可以自动的调整各个中间键值的位置,例如:当比较模块260判断出被读取模块230所读出的时间标签介于起始键值与第一中间键值(最接近起始键值的中间键值)之间时,键值定义模块250可以定义读取模块230所读出的时间标签为新的第一中间键值;当比较模块260判断出被读取模块230所读出的时间标签介于第一中间键值与第二中间键值之间(第二中间键值较第一中间键值靠近结尾键值)或被读取模块230所读出的时间标签介于第二中间键值(最接近结尾键值的中间键值)与结尾键值之间时,键值定义模块250可以定义读取模块230所读出的时间标签为新的第二中间键值。
另外,本发明并不限定于只能使用两个中间键值,因此键值定义模块250更用以定义使用的中间键值的数量,例如当键值定义模块250定义使用三个中间键值时,序列将被分为四个区段,使得比较模块260需要判断时间标签将介于起始键值与第一中间键值、第一中间键值与第二中间键值之间、第二中间键值与第三中间键值之间、或第三中间键值与结尾键值之间,再由排序模块240进行排序。
再者,本发明的歌词排序的方法,可实现于硬件、软件或硬件与软件的组合中,亦可在电脑系统中以集中方式实现或以不同元件散布于若干互连的电脑系统的分散方式实现。
虽然本发明所揭露的实施方式如上,惟所述的内容并非用以直接限定本发明的专利保护范围。任何本发明所属技术领域中具有通常知识者,在不脱离本发明所揭露的精神和范围之内,在实施的形式上及细节上所为的更动或润饰,均属本发明的专利保护范围。因此本发明的专利保护范围仍须以本说明书所附的权利要求范围所界定者为准。

Claims (8)

1.一种歌词排序的方法,是将一歌词档中的歌词排序为一特定顺序的一序列,该方法包含下列步骤:
将该歌词档中的各行歌词对应至该行所记录的各时间标签;
读取与复数个键值的相同数量的时间标签,其中该些键值包含一起始键值、至少一中间键值、及一结尾键值,且该些被读取的时间标签对应于未排序的该歌词中;
以特定顺序排列该些被读取的时间标签;
依据该特定顺序将该些时间标签依序对应至该起始键值、各该中间键值、及该结尾键值,藉以将该些时间标签所形成的该序列分为复数个区段;
由各该未排序的时间标签中读取其中之一;
比对该被读取的时间标签与该些键值对应的该已排序的时间标签,藉以判断该被读取的时间标签所在的区段;
当该被读取的时间标签位于该起始键值与最接近该起始键值的各该中间键值其中之一之间时,将该最接近该起始键值的中间键值重新对应至该被读取的时间标签;
比对该被读取的时间标签与该区段内的所有已排序的时间标签,藉以将该被读取的时间标签排列至该区段的适当位置;及
于所有该时间标签都排序后,依据时间标签的排列顺序排列与该时间标签相对应的各该歌词。
2.如权利要求1所述的歌词排序的方法,其中该方法更包含设定各该中间键值的数量的步骤。
3.如权利要求1所述的歌词排序的方法,其中该方法更包含当该被读取的时间标签位于各该中间键值的相邻两者之间时,将该两中间键值中较靠近该结尾键值的中间键值重新对应至该被读取的时间标签的步骤。
4.如权利要求1所述的歌词排序的方法,其中该方法更包含当该被读取的时间标签位于该结尾键值与最接近该结尾键值的各该中间键值其中之一之间时,将该最接近该结尾键值的中间键值重新对应至该被读取的时间标签的步骤。
5.一种歌词排序的系统,是将一歌词档中的歌词排序为一特定顺序的一序列,该系统包含:
一储存模块,用以储存该歌词档;
一对应模块,用以将歌词档中的各行歌词对应至该行所记录的各时间标签;
一读取模块,用以读取与复数个键值的相同数量的时间标签,其中该些键值包含一起始键值、至少一中间键值、及一结尾键值,且该些被读取的时间标签对应于未排序的该歌词中,及用以由各该未排序的时间标签中读取其中之一;
一排序模块,用以依据该特定顺序将该读取模块所读出的该些时间标签排序;
一键值定义模块,用以将该序列中的该些时间标签依序对应为该起始键值、各该中间键值、及该结尾键值;
一比对模块,用以比对该被读取的时间标签与该些键值所对应的该已排序的时间标签,藉以判断该被读取的时间标签所在的一区段,使该键值定义模块用以于该被读取的时间标签位于该起始键值与最接近该起始键值的各该中间键值其中之一之间时,将该最接近该起始键值的中间键值重新对应至该被读取的时间标签,並使该排序模块依据该特定顺序将该被读取的时间标签排列至该区段的适当位置;及
一歌词排列模块,用以于所有该时间标签都排序后,依据时间标签的排列顺序排列与该时间标签相对应的各该歌词。
6.如权利要求5所述的歌词排序的系统,其中该键值定义模块更用以设定各该中间键值的数量。
7.如权利要求5所述的歌词排序的系统,其中该键值定义模块更用以于该被读取的时间标签位于各该中间键值的相邻两者之间时,将该两中间键值中较靠进该结尾键值的中间键值重新对应至该被读取的时间标签。
8.如权利要求5所述的歌词排序的系统,其中该键值定义模块更用以于该被读取的时间标签位于该结尾键值与最接近该结尾键值的各该中间键值其中之一之间时,将该最接近该结尾键值的中间键值重新对应至该被读取的时间标签。
CN2007101955039A 2007-11-30 2007-11-30 歌词排序系统及其方法 Expired - Fee Related CN101452460B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101955039A CN101452460B (zh) 2007-11-30 2007-11-30 歌词排序系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101955039A CN101452460B (zh) 2007-11-30 2007-11-30 歌词排序系统及其方法

Publications (2)

Publication Number Publication Date
CN101452460A CN101452460A (zh) 2009-06-10
CN101452460B true CN101452460B (zh) 2012-05-23

Family

ID=40734696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101955039A Expired - Fee Related CN101452460B (zh) 2007-11-30 2007-11-30 歌词排序系统及其方法

Country Status (1)

Country Link
CN (1) CN101452460B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1815981A (zh) * 2006-03-10 2006-08-09 清华大学 对等网络中全局节点维护方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1815981A (zh) * 2006-03-10 2006-08-09 清华大学 对等网络中全局节点维护方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
梁家海.分段式链表插入排序的算法研究及性能分析.钦州师范高等专科学校学报.2006,21(3),51-53,65. *
祁璋.分段组链排序法.微型机与应用.1993,(2),14,15. *

Also Published As

Publication number Publication date
CN101452460A (zh) 2009-06-10

Similar Documents

Publication Publication Date Title
CN102882838B (zh) 应用验证码机制的认证方法与系统
CN105653554B (zh) 一种文件数据比对方法和系统
CN101246510B (zh) 可编程逻辑器件硬件结构通用建模方法
EP1357486A3 (en) Logical hierarchical data model for sharing product information across product families
ATE247300T1 (de) Schnelle gruppierung durch spärlich bestückte datensätze
CN102207956A (zh) 数据库管理方法、数据库管理系统及其程序
SE0300353D0 (sv) Method and system for managing energy information
Balakrishnan et al. Manufacturing cell formation using similarity coefficients and a parallel genetic TSP algorithm: Formulation and comparison
CN105574769A (zh) 建立社交网络动态关系图的方法及装置
CN102207935A (zh) 用于创建索引的方法和系统
CN101510215B (zh) 一种计算机系统中的数据处理方法和系统
CN101551814B (zh) 一种数据管理和数据搜索方法
CN101452460B (zh) 歌词排序系统及其方法
CN102693250A (zh) 一种3d模型文件导入方法及系统
CN102214248A (zh) 一种挖掘海量数据的高空间可伸性和高时间效率的多层频繁模式发现算法
Makri On occurrences of FS strings in linearly and circularly ordered binary sequences
CN101404492A (zh) 加载现场可编程门阵列的方法、装置和系统
CN101650732A (zh) 一种对象管理系统中的对象分组方法及装置
CN114970165A (zh) 一种桥架内电缆的数字化实体自动建模方法、系统及设备
Chen et al. A new tabular form for determining root distribution of a complex polynomial with respect to the imaginary axis
CN105573717B (zh) 一种面向多核处理器的程序划分方法及装置
JP2003132332A (ja) 学習データ作成支援装置
CN103064862A (zh) 一种多指标排序数据处理方法及设备
CN105824968B (zh) 一种清理文件夹的方法、装置及移动终端
CN106484868B (zh) 基于limit语义的数据排序方法和数据排序装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Ye Meirong

Inventor after: Yin Pan

Inventor after: Yu Huanhuan

Inventor after: Zhang Jingcheng

Inventor after: Pang Junping

Inventor before: Qiu Quancheng

Inventor before: Dai Lin

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170913

Address after: No. sixteen, No. 895, South Road, Linwei District, Shaanxi, Weinan

Co-patentee after: Yin Pan

Patentee after: Ye Meirong

Co-patentee after: Yu Huanhuan

Co-patentee after: Zhang Jingcheng

Co-patentee after: Pang Junping

Address before: Taipei City, Taiwan Chinese Shilin District Hougang Street No. 66

Patentee before: Inventec Corporation

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120523

Termination date: 20171130