我姓史,请问我的满族姓氏是什么

栏目:资讯发布:2023-09-27浏览:3收藏

我姓史,请问我的满族姓氏是什么,第1张

因为不了解你们家族的具体情况,很难回答你的问题。如果你真的是满族人,那么根据〈清朝通志·氏族略·满洲八旗姓〉记载,姓氏来源有以下五种可能:一、石佳氏(也作实嘉氏,多取史、石二姓);二、石富察氏(多取史、石二姓);三、石穆鲁氏(也作石莫勒氏,多取史、石、穆、鲁、萧等姓);四、松吉氏(多取史姓);五、松颜氏(多取史姓)。要想确切地了解姓氏的来源,最可靠的办法是寻找家谱,里面的记载是最可信的。

李颀《听董大弹胡笳声兼寄语弄房给事》一诗诗题曾在1949年后引起过许多学者的关注。从1959年学界对蔡文姬《胡笳十八拍》的讨论开始,到七十年代程千帆先生和施蛰存先生在总结前人的基础上分别提出各自的意见,至今未有定论。学者关注此诗题的问题主要有两个:一是诗题于流传中异文颇多,不知哪个更接近原貌;二是题目中某些字词意思于今难懂,不知应作何解。笔者在此提出一个新的可能,与学人共同商讨,并望方家予以指正。

中华书局最新版王锡九先生《李颀诗歌校注》中对此诗诗题的注解主要引述了程千帆、施蛰存两位先生的观点,虽然各不相同,但在今天看来都有值得商榷之处。下面就此一一进行分析。

(一) 施蛰存先生认同《河岳英灵集》版的诗歌标题,认为《听董大弹胡笳声兼语弄寄房给事》“这是李颀自己写下的原题”,“《唐文粹》《唐诗纪事》《唐音》都照录原题,可知编者都了解题义”。诗题标点应为“听董大弹胡笳,声兼语弄,寄房给事”。而其他版本的致误之由是:

《河岳英灵集》的编者殷璠在评论李颀时,引述这首诗说:“又《听弹胡笳声》云……”他把诗题简缩为五个字,而在“声”字上读断,这是第一个读破句的人。后人跟他误读,下文的“兼语弄”云云就无法理解了。

施先生解释“声兼语弄”,认为“声”的意思是声音,“语”的意思是胡语胡乐,“唐人对西域来的音乐或歌曲,都比之为胡语”,“弄”则是琴曲,所以此四字是在形容董庭兰弹奏的《胡笳十八拍》“兼有胡笳和琴的声音”(施蛰存《唐诗百话》,陕西师范大学出版社2014年版)。

这一解读有两个值得商榷之处。

其一,李颀此诗作于天宝年间,《河岳英灵集》编纂于天宝末年,前后相差至多不过十余年,不应存在编者读破诗题的情况,除非殷璠看到的诗题已令他感到不解,也即是说此诗题传至殷璠已出现讹误。试想,若同为天宝人的殷璠尚且读破句,后来《唐文粹》《唐诗纪事》《唐音》的编者们比殷璠更了解题义的可能性有多少?

其二,将“语”解释为“千载琵琶作胡语”的“胡语”实在有些牵强。检唐诗中若有“胡语”意者,必按一“胡”字。因为琵琶属于胡琴就将琵琶诗中的“语”都解作胡语,进而将其所咏乐曲皆视为胡曲,又以此证明其他音乐诗中出现的“语”也皆为胡曲之意,这样的推断恐怕不妥。随便拿几首诗就可以证明:“小弦切切如私语”(白居易《琵琶行》),“昵昵儿女语”(韩愈《听颖师弹琴》),一是琵琶一是古琴,难道二者所描写的都是胡曲?况且在古代音乐文献中,能否把“胡语”跟“弄”相连并用也值得考虑。以此看来,《唐诗百话》中对此诗题的解释较难成立。

(二) 程千帆先生在《李颀〈听董大弹胡笳声兼寄语弄房给事〉诗题校释》中认为李颀此诗诗题流传有误,并做出相关校释:

一是“弄”字指琴曲,但是与“声”字并见不可解,因此“弄”或为释“声”字义混入正文的衍文;二是“寄语”及“兼寄语”应当为连文。“寄语”在诗歌中常见,“兼寄”在唐人诗题中常见。同时“语”和“语弄”并非音乐术语。因此程先生认为此题目应为《听董大弹胡笳声兼寄语房给事》。题目传抄错误的步骤可能是《十家诗集》系统先衍出“弄”字,《河岳英灵集》系统又在此基础上乙“语”与“寄”。《唐诗品汇》系统讹误最大,先衍后乙再缺“声”字(程千帆《李颀〈听董大弹胡笳声兼寄语弄房给事〉诗题校释》,《程千帆选集》,辽宁古籍出版社)。

程先生的校释也有三点值得商榷。

其一,“寄语”一词的色彩义及其使用习惯。“寄语”一词字典义概括为“传话,转告”,但从感 彩上看,它通常有一种语重心长的、或较凝重或类似传达经验的、犹有深意的味道。如:

寄语后生子,作乐当及春。(鲍照《代少年时至衰老行》)

寄语同心伴,迎春且薄妆。(刘希夷《晚春》)

寄语边塞人,如何久离别。(孟浩然《同张明府清镜叹》)

寄语何平叔,无为轻老生。(刘禹锡《寓兴》其一)

寄语双莲子,须知用意深。(李群玉《寄人》)

包括程先生文中引到的杜甫《驱竖子摘苍耳》“寄语恶少年,黄金且休掷”等也是如此。这其中杜诗“寄语杨员外”(《路逢襄阳杨少府入城戏呈杨员外绾》)有些不同,但此诗题既已标明是“戏呈”,这种“寄语”当属朋友间的诙谐口吻。所以从用法上看,李颀似乎不该因为听了董大的美妙琴曲就犹有深意地“寄语”房管,纵观全诗也并无一丝戏谑之意。此外,检索今存《全唐诗》《全宋诗》,尚未见诗题中有“寄语”二字者。

其二,程先生说“弄”是琴曲术语,可能最初是“声”字释文,因此而衍。但在古代音乐领域,“声”和“弄”的内涵外延并不相同,不当出现以“弄”解“声”的现象。

“声”有时特指五声,有时指某乐器发出的声音,如琴声、笛声、琵琶声、胡笳声等,在乐曲中也指某种声音或情境的表达或再现,比如说琴曲中有凤凰声、胡笳声,“声声犹带发冲冠”(贾岛《听乐山人弹易水》)等。

“弄”在器乐中有两义,动词为演奏音乐,名词为乐曲。《说文》:“弄,玩也。”玩乐器就是演奏乐曲。《世说新语·任诞》中桓子野为王子猷吹笛篇说,桓“即便回下车,踞胡床,为作三调。弄毕,便上车去”即是。后来应是由动词派生出名词义,所以乐曲也叫“弄”,于是出现以“弄”为曲名者,如同乐府中的“歌”“行”“引”之类,如嵇康《琴赋》:“改韵易调,奇弄乃发。”《南史·隐逸传》载:“宗少文善琴,古有《金石弄》,为诸桓所重。桓氏亡,其声遂绝,惟少文传焉。”等等。再后来其成为古琴的一种专用曲式,如刘宋谢希逸《琴论》:“和乐而作,命之曰畅……忧愁而作,命之曰操……引者,进德修业,申达之名也。弄者,情性和畅,宽泰之名也。”(《乐府诗集》卷第五十七《琴曲歌辞》,上海古籍出版社1998年版)而大概正是由于最后一个涵义,让之前的学者们习惯于把目光集中在诗题中的“语弄”和“弄”上。

但是由此可见,“声”绝不是“弄”,“弄”也绝非“声”,二者不应互释。岑参有《胡笳歌送颜真卿使赴河陇》,起二句曰:“君不闻胡笳声最悲,紫髯绿眼胡人吹。”是很明显区分了“歌”与“声”。郭茂倩《乐府诗集》引唐刘商《胡笳曲序》说:“董生以琴写胡笳声为十八拍,今之《胡笳弄》是也。”许健解释这段话说:“他(笔者按:董庭兰)是把‘声’加工成‘弄’的。”(许健《琴史新编》,中华书局2012年版)可见“声”是“声”,“弄”是“弄”。观岑参此诗诗题与起句跟李诗有相似之处,而李诗起句“蔡女昔弹胡笳声,一弹一有十八拍”也正是刘序里的意思。

其三,程先生所见《十家诗集》《河岳英灵集》《唐诗品汇》三个系统虽都是明刻本,但《十家诗集》系统所出最晚,《十家诗集》刊于万历年间,其系统中最早的《唐诗二十六家》也刻于嘉靖年间。《唐诗品汇》却成书于明初,最早刻本出于弘治。为何晚出的反而讹误最少?

由于李诗流传最广的几个版本诗题意思确实难解,笔者顺着程先生的思路认为此诗题在传抄过程中产生讹误的情况是极有可能的。在此,笔者提出一个新的讹误可能,与学人共商:“语”字或是“调”字之讹,“语弄”应是“调弄”。“声”字或为衍文。理由如下:

(一) “语”与“调”

讹误可能性:形近而讹。

“调弄”二字或本应是连文。从题目传写看,常见四个版本的差异主要在“声”“兼”“语”“弄”“寄”五个词素顺序或者有无的不同上。但不论如何调换,“语弄”两个词素总是连在一起的。说明很可能此二字在原始版本中就相连:

《听董大弹胡笳声兼语弄寄房给事》(《河岳英灵集》等)

《听董大弹胡笳声兼寄语弄房给事》(《十家唐诗》《全唐诗》等)

《听董大弹胡笳兼寄语弄房给事》(《唐诗品汇》等)

《听董庭兰弹琴兼寄房给事》(《文苑英华》)

“调弄”成词,且是音乐术语,运用广泛。“调”和“弄”本各自有义,合为一词在音乐上有两义。做动词时“调”音阳平,指演奏音乐,特指弦乐,如方干《听段处士弹琴》:“几年调弄七条丝,元化分功十指知。”做名词则读去声,泛指乐曲、曲调。如宋代《张协状元》戏文第二出:“适来听得一派乐声,不知谁家调弄?”钱南扬校注:“谁家调弄,犹云‘甚么曲调’。”(钱南扬《永乐大典戏文三种校注》,中华书局1979年版)《宋金元戏曲文物图论》中又进一步说明这里的调弄指弦乐:

所谓调弄,当不同于“吹”曲破断送,应为琵琶之类。(山西师范大学戏曲文物研究所编《宋金元戏曲文物图论》,山西人民出版社1987年版)

“调弄”可以用来称呼各种弦乐曲。如唐诗中白居易有诗题《带琵琶弟子谢女师曹供奉寄新调弄谱》,此是琵琶;宋太宗《缘识》其二八:“阮咸初立意,偷得姮娥月。……堪听诸调弄,勾锁无休歇”是写阮;欧阳修《三琴记》“其他不过数小调弄,足以自娱”,陶宗仪《说郛》载宋僧居月《琴曲类集》“凡诸调弄,诸家谱录尽分三古”,则都是写琴。从琴的领域看,“调弄”跟“弄”意思相似。

若从“弄为古琴术语”这一视域中跳出看,诗题写作“调弄”也是完全合理的。

以“胡笳”为名的琴曲在唐代很是流行,今见至少有“大胡笳”“小胡笳”“胡笳弄”“胡笳引”“胡笳曲”等几种不同称呼。而董庭兰在历史上也确实以整理、演奏胡笳曲闻名。除了前引刘商《胡笳曲序》:“董生以琴写胡笳声为十八拍,今之《胡笳弄》是也”,还有元稹《小胡笳引》“哀笳慢指董家本,姜生得之妙思忖”等可为证。“董家本”即指董庭兰整理的《胡笳》谱。

综上所述,可以说刘商《胡笳曲序》中的《胡笳曲》《胡笳弄》正是李诗题目中的“胡笳调弄”。若此说成立,则“调”讹为“语”的时间应该很早,因为今见最早的宋刻《河岳英灵集》就已如此。因此很可能是先有此讹在前,导致后人对此诗题模棱两可,于是有了后来各种版本文字顺序上的调换。

(二) 关于“声”字是否为衍文

衍文可能性:衍诗歌第一句“蔡女昔造胡笳声”中的“声”字。

统观唐代音乐诗,尚未发现“听某人弹某声”的用法。李颀有《听安万善吹觱篥歌》,王昌龄有《听弹风入松阕赠杨补阙》,白居易《听弹湘妃怨》,贾岛《听乐山人弹易水》,顾况《李供奉弹箜篌歌》,李贺《听颖师弹琴歌》等等之类,结构均是:

听+(某人+)弹/吹……+某曲(+赠/寄)(+某人)

其所表述的听弹音乐都是完整乐曲,而非某“声”。且一首诗题中有“声”有“调弄”也略显繁琐。

《唐诗品汇》无“声”字。《唐诗品汇》完成于明初,且被学者公认为“精审”之作,保留了许多前代珍贵文献遗迹。高棅独在此书中于诗题未加“声”字,应该不是漏刻,而是有其他更早版本为依照。

但是“声”字究竟是否确为衍文还值得思考,因为今见宋本《河岳英灵集》中殷璠已简称其为“《听弹胡笳声》”(影宋本《河岳英灵集》,中华再造善本,北京图书馆出版社2002年版)。若为衍,则或者此处与诗题皆衍,如此则很有可能殷璠看到的诗题已经有此衍文。若不衍,则或者因为“声”与“调弄”毕竟不同,因此用一“兼”字,胡笳声不成曲调,展示过后再弹完整的《胡笳》。

据此,笔者提出还原此诗题的三种可能:

第一种:《听董大弹胡笳调弄兼寄房给事》。这是于文义而言最顺畅的诗题。若如此,则各家在讹“调”为“语”的基础上:《唐诗品汇》乙“兼寄”“语弄”;《河岳英灵集》衍“声”字,又乙“兼”“语弄”;《二十六家》衍“声”字,又乙“兼寄”“语弄”。

第二种:《听董大弹胡笳声兼调弄寄房给事》。这是最符合奥卡姆剃刀原理,兼顾可见最早版本和讹误最简的诗题。“声”指琴奏出胡笳乐声,“调弄”指作为完整曲子的胡笳曲。若如此则《河岳英灵集》只讹“调”为“语”。

第三种:《听董大弹胡笳(声)兼寄调弄房给事》。若如此,“调弄”当指调弄谱,与白诗《带琵琶弟子谢女师曹供奉寄新调弄谱》题目相类似。诗人听了胡笳曲顺便把曲谱寄给房给事。“声”字若衍,则“胡笳”指胡笳曲;“声”字不为衍,则胡笳声指奏出胡笳味的琴音。若如此,《唐诗二十六家》只讹“调”为“语”。

以上三种可能的来源或许分属三个系统,且都有更早本子可依。

一个是《唐诗品汇》系统,上文已有分析,此不赘述。

一个是《河岳英灵集》系统。上文提到的宋刻《河岳英灵集》是迄今可见载有此诗的最早本子,明本诗题文字与之相同。

一个是明刻《唐五十家诗集》系统。《唐五十家诗集》中此诗题目与前文提到的嘉靖《唐诗二十六家》及之后《十家》《百家》等各多家诗题文字相同。今学者考证认为该书刻于弘治前,其中收录的个人诗集与可考之宋元本诗集间有密切关系(影明铜活字本《唐五十家诗集》前言,上海古籍出版社1989年版)。其中《李颀集》收诗109首,与今见最早的正德刘成德刻本《李颀集》(87首)很是不同,与记载中存诗118首的陆涓本或其他别集刻本来源应该也不同,很可能亦另有宋元本可依。而后来的《二十六家》等多家诗诗集对李颀诗的选刻很可能源出此本。

因此,仅从版本上看,虽然《河岳英灵集》为宋刻,依然很难说明哪个系统文字更接近作者原著,也无法由此断定“声”字究竟是否为衍文,这一疑问还需求教于方家了。

(作者单位:青岛大学文学院)

新书架《李太白全集校注》

《李太白全集校注》(精装全八册)是李白研究大家郁贤皓教授毕生治学经验之结晶。在前贤和今人研究的基础上,郁教授用“竭泽而渔”的方法搜集资料,以认真审慎的态度,通过实证研究的工夫,对李白的全部诗文重新整理编集,删除伪作,补入遗诗逸文,并进行校勘、注释、评笺,从而为学界提供了一种全新的李白全集校注本,堪称当代李白研究的最新总结。这个总结建立在版本、考据、义理之上,继往开来,具有重要的学术价值和文献意义,将对开创李白研究、唐代文学研究乃至整个古典文学和文化的研究工作的新局面,提供极大便利和裨益。

《李太白全集校注》,精装十六开,全八册,凤凰出版社2015年12月版,定价880元。

研究人员在Geni公共系谱网站上筛选了8600万人的资料,他们对过去500年人类迁徙和婚姻选择的变化感兴趣。

通过许多对家族历史好奇的系谱学家的辛勤工作,该研究的资深作者、哥伦比亚大学计算机科学家亚尼夫·埃尔里奇在一份声明中说:“我们众包了一棵巨大的家谱,并由此产生了一些独特的东西。”。Erlich还是MyHeritage的首席科学官,MyHeritage是一家拥有Geni的家谱和DNA测试公司,Geni是该研究所用数据的托管平台。[数字遗传学-10个诱人的故事]

萌芽树

下载了8600万份资料后,研究人员利用数学图论对资料的准确性进行了整理和复核。除了较小的族谱外,他们还将1300万人口中的巨大一个,通过血统和婚姻联系在一起,平均跨越11代。研究人员指出,如果这些数据再追溯65代,研究人员就可以确定这一群体的共同祖先,并完成这棵树。

以确认Geni数据代表了美国的一般人口,研究人员将Geni数据与大约80个样本进行了比较,从1985年到2010年,佛蒙特州公开提供了000份死亡证明。总的来说,这两个数据集具有高度相似的社会人口统计学特征,这意味着Geni制作的家谱很好地代表了美国的人们,研究人员说,

这棵树,据我所知,是迄今为止最大的一组家谱,“Mark stonking,德国莱比锡马克斯普朗克进化人类学研究所的一位生物人类学教授没有参与这项研究,他在一封电子邮件中告诉《生活科学》。Stoneking补充道,这项研究显示了“利用个人祖先数据获取各种新奇信息的能力,[这些信息]以前没有人真正想到过。”新创建的家族树显示,随着时代的变化,人们寻找婚姻伴侣的距离也在变化。1750年以前,美国大多数人娶了一个住在自己出生地6英里(10公里)以内的人。但是200年后,1950年出生的人倾向于走得更远,去寻找那个完美的人——研究人员发现,平均来说,他们与一个住在距离配偶双方出生地60英里(100公里)的人结婚。

“找到你生命中的爱变得更加困难,厄里奇开玩笑说:

而且,1650年到1850年间,四表亲结婚是很普遍的。如今,在美国,人们在文化上忌讳与你有如此密切关系的人结婚,这也许可以解释为什么今天与第七个表亲结婚更为普遍,研究人员说,

家族树也揭示了一个奇怪的小道消息:从1800年到1850年,研究人员发现,尽管人们为了寻找伴侣而比平时走得更远——平均距离近12英里(19公里)——但他们还是更可能与第四个或更亲近的人结婚,而不是与更遥远的亲戚结婚。这揭穿了这样一个观点:当人们走得更远时,他们会对与他们关系不大的人说“我愿意”。来自世界各地的10个婚礼传统

相反,很可能是社会规范的改变促使人们停止与近亲结婚。

“我们假设19世纪交通运输的变化不是血缘关系下降的主要原因,”研究人员在研究报告中写道相反,我们的研究结果表明,文化因素的改变在最近西方社会夫妻遗传相关性的降低中扮演了更重要的角色。

此外,研究人员发现,在过去300年中,北美和欧洲的女性比男性更倾向于移民。然而,当人们迁移的时候,他们走得更远,研究人员发现,平均来说,与女性相比,

研究人员用图论清理和整理了这6000人的家谱。这棵树跨越七代,显示出遗传联系(绿色)和婚姻(红色)。(哥伦比亚大学)寿命解码

研究人员对基因如何影响寿命进行了更深入的研究。他们分析了300万名出生于1600年至1910年之间、年龄超过30岁的亲戚的数据。这组数据不包括双胞胎,也不包括死于美国内战、第一次世界大战和第二次世界大战或自然灾害的人。

基因占寿命变异的16%,研究人员在将每个人的寿命与其亲属的寿命进行比较后得知,以及这些亲属之间的分离程度。研究人员说,这是先前估计的最低值,一般在15%到30%之间。

的发现表明,拥有长寿基因的人可能比没有这些基因的人平均多活5年。但是,“这不算多,”厄里奇说以前的研究表明,吸烟会使你的生命减少10年。这意味着一些生命选择可能比遗传学重要得多。

1300万人的家谱可在FamiLinxorg上进行学术研究,FamiLinxorg是由Erlich和他的同事创建的一个网站。FamiLinx上的数据是匿名的(尽管,在2014年,Erlich指出,根据之前的《生活科学》(Live Science)报道,在匿名的个人资料中识别人物并不困难),但人们可以查看Geni,看看是否有家庭成员将其添加到网站中。研究人员说,如果你在Geni上找到自己,你很有可能登上这棵巨大的家谱。

这项研究今天(3月1日)在线发表在《科学》杂志上。

是关于生命科学的原始文章。

数组是最简单也是最常见的数据结构。它们的特点是可以通过索引(位置)轻松访问元素。

它们是做什么用的?

想象一下有一排剧院椅。每把椅子都分配了一个位置(从左到右),因此每个观众都会从他将要坐的椅子上分配一个号码。这是一个数组。将问题扩展到整个剧院(椅子的行和列),您将拥有一个二维数组(矩阵)。

特性

链表是线性数据结构,就像数组一样。链表和数组的主要区别在于链表的元素不存储在连续的内存位置。它由节点组成——实体存储当前元素的值和下一个元素的地址引用。这样,元素通过指针链接。

它们是做什么用的?

链表的一个相关应用是浏览器的上一页和下一页的实现。双链表是存储用户搜索显示的页面的完美数据结构。

特性

堆栈是一种抽象数据类型,它形式化了受限访问集合的概念。该限制遵循 LIFO(后进先出)规则。因此,添加到堆栈中的最后一个元素是您从中删除的第一个元素。

堆栈可以使用数组或链表来实现。

它们是做什么用的?

现实生活中最常见的例子是在食堂中将盘子叠放在一起。位于顶部的板首先被移除。放置在最底部的盘子是在堆栈中保留时间最长的盘子。

堆栈最有用的一种情况是您需要获取给定元素的相反顺序。只需将它们全部推入堆栈,然后弹出它们。

另一个有趣的应用是有效括号问题。给定一串括号,您可以使用堆栈检查它们是否匹配。

特性

队列是受限访问集合中的另一种数据类型,就像前面讨论的堆栈一样。主要区别在于队列是按照FIFO(先进先出)模型组织的:队列中第一个插入的元素是第一个被移除的元素。队列可以使用固定长度的数组、循环数组或链表来实现。

它们是做什么用的?

这种抽象数据类型 (ADT) 的最佳用途当然是模拟现实生活中的队列。例如,在呼叫中心应用程序中,队列用于保存等待从顾问那里获得帮助的客户——这些客户应该按照他们呼叫的顺序获得帮助。

一种特殊且非常重要的队列类型是优先级队列。元素根据与它们关联的“优先级”被引入队列:具有最高优先级的元素首先被引入队列。这个 ADT 在许多图算法(Dijkstra 算法、BFS、Prim 算法、霍夫曼编码 )中是必不可少的。它是使用堆实现的。

另一种特殊类型的队列是deque 队列(双关语它的发音是“deck”)。可以从队列的两端插入/删除元素。

特性

Maps (dictionaries)是包含键集合和值集合的抽象数据类型。每个键都有一个与之关联的值。

哈希表是一种特殊类型的映射。它使用散列函数生成一个散列码,放入一个桶或槽数组:键被散列,结果散列指示值的存储位置。

最常见的散列函数(在众多散列函数中)是模常数函数。例如,如果常量是 6,则键 x 的值是x%6。

理想情况下,散列函数会将每个键分配给一个唯一的桶,但他们的大多数设计都采用了不完善的函数,这可能会导致具有相同生成值的键之间发生冲突。这种碰撞总是以某种方式适应的。

它们是做什么用的?

Maps 最著名的应用是语言词典。语言中的每个词都为其指定了定义。它是使用有序映射实现的(其键按字母顺序排列)。

通讯录也是一张Map。每个名字都有一个分配给它的电话号码。

另一个有用的应用是值的标准化。假设我们要为一天中的每一分钟(24 小时 = 1440 分钟)分配一个从 0 到 1439 的索引。哈希函数将为h(x) = x小时60+x分钟。

特性

术语:

因为maps 是使用自平衡红黑树实现的(文章后面会解释),所以所有操作都在 O(log n) 内完成;所有哈希表操作都是常量。

图是表示一对两个集合的非线性数据结构:G={V, E},其中 V 是顶点(节点)的集合,而 E 是边(箭头)的集合。节点是由边互连的值 - 描述两个节点之间的依赖关系(有时与成本/距离相关联)的线。

图有两种主要类型:有向图和无向图。在无向图中,边(x, y)在两个方向上都可用:(x, y)和(y, x)。在有向图中,边(x, y)称为箭头,方向由其名称中顶点的顺序给出:箭头(x, y)与箭头(y, x) 不同。

它们是做什么用的?

特性

图论是一个广阔的领域,但我们将重点介绍一些最知名的概念:

一棵树是一个无向图,在连通性方面最小(如果我们消除一条边,图将不再连接)和在无环方面最大(如果我们添加一条边,图将不再是无环的)。所以任何无环连通无向图都是一棵树,但为了简单起见,我们将有根树称为树。

根是一个固定节点,它确定树中边的方向,所以这就是一切“开始”的地方。叶子是树的终端节点——这就是一切“结束”的地方。

一个顶点的孩子是它下面的事件顶点。一个顶点可以有多个子节点。一个顶点的父节点是它上面的事件顶点——它是唯一的。

它们是做什么用的?

我们在任何需要描绘层次结构的时候都使用树。我们自己的家谱树就是一个完美的例子。你最古老的祖先是树的根。最年轻的一代代表叶子的集合。

树也可以代表你工作的公司中的上下级关系。这样您就可以找出谁是您的上级以及您应该管理谁。

特性

二叉树是一种特殊类型的树:每个顶点最多可以有两个子节点。在严格二叉树中,除了叶子之外,每个节点都有两个孩子。具有 n 层的完整二叉树具有所有2ⁿ-1 个可能的节点。

二叉搜索树是一棵二叉树,其中节点的值属于一个完全有序的集合——任何任意选择的节点的值都大于左子树中的所有值,而小于右子树中的所有值。

它们是做什么用的?

BT 的一项重要应用是逻辑表达式的表示和评估。每个表达式都可以分解为变量/常量和运算符。这种表达式书写方法称为逆波兰表示法 (RPN)。这样,它们就可以形成一个二叉树,其中内部节点是运算符,叶子是变量/常量——它被称为抽象语法树(AST)。

BST 经常使用,因为它们可以快速搜索键属性。AVL 树、红黑树、有序集和映射是使用 BST 实现的。

特性

BST 有三种类型的 DFS 遍历:

所有这些类型的树都是自平衡二叉搜索树。不同之处在于它们以对数时间平衡高度的方式。

AVL 树在每次插入/删除后都是自平衡的,因为节点的左子树和右子树的高度之间的模块差异最大为 1。 AVL 以其发明者的名字命名:Adelson-Velsky 和 Landis。

在红黑树中,每个节点存储一个额外的代表颜色的位,用于确保每次插入/删除操作后的平衡。

在 Splay 树中,最近访问的节点可以快速再次访问,因此任何操作的摊销时间复杂度仍然是 O(log n)。

它们是做什么用的?

AVL 似乎是数据库理论中最好的数据结构。

RBT(红黑树) 用于组织可比较的数据片段,例如文本片段或数字。在 Java 8 版本中,HashMap 是使用 RBT 实现的。计算几何和函数式编程中的数据结构也是用 RBT 构建的。

在 Windows NT 中(在虚拟内存、网络和文件系统代码中),Splay 树用于缓存、内存分配器、垃圾收集器、数据压缩、绳索(替换用于长文本字符串的字符串)。

特性

最小堆是一棵二叉树,其中每个节点的值都大于或等于其父节点的值:val[par[x]]

我姓史,请问我的满族姓氏是什么

因为不了解你们家族的具体情况,很难回答你的问题。如果你真的是满族人,那么根据〈清朝通志·氏族略·满洲八旗姓〉记载,姓氏来源有以下五...
点击下载
热门文章
    确认删除?
    回到顶部