表(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec)顺序依次插入初始为空的二叉排序树,画出二叉树

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-05
给定表(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,sep,Oct,Nov,Dec),设取散列函数H(x)=[i/2]

由于字母表最大的序号为26,26/2=13,散列表只需要0~13即可。

开散列:
位置 值
0 Apr Aug
1
2 Dec
3 Feb
4
5 Jan Jun Jul
6 Mar May
7 Oct Nov
8
9 Sep
10
11
12
13

闭散列:
位置 值
0 Apr
1 Aug
2 Dec
3 Feb
4
5 Jan
6 Mar
7 May
8 Jun
9 Jul
10 Sep
11 Oct
12 Nov
13

查找成功:
开散列表:(7+2+2+2+2+3)/12=3/2
闭散列表:(1+1+1+1+2+2+3+2+2+5+6+1)/12=9/4

查找不成功:
开散列表:(3+1+2+2+1+4+3+3+1+2+1+1+1)/12=25/12
闭散列表:(5+4+3+2+1+9+8+7+6+5+4+3+2+1)/12=5

我这只写出了答案,如果需要详细的解释我可以再补充,希望对你能有帮助。

显然不能是26啊,一般来讲散列表的长度(在c中)确定之后就不改变了,所以会多留出若干位的
所以你最起码得27位。否则要是出现{z,z,a,b,c,d}这种多悲剧啊,明明只有一个冲突,但是因为你是线性再探,所以就会占用其他人的地方导致各种冲突。

Jan
Feb Mar
Apr Jun May
Aug Jul Sep
Dec Oct
Nov
抱歉,箭头出不来!

广度排序的顺序就是:Jan、Feb、Mar、Apr、Jun、May、Aug、Jul、Sep、Dec、Oct、Nov

Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec
假设以此为顺序,
假设采用一般策略,凡比父结点小的入左子树,凡比父结点大的入右子树。
如果输入月份也是按这个顺序输入的话,因为已经排序了,每次下一个输入的都比原先的大,结果每次插入都插到了右子树,结果退化成一个链表。(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec)

米明白~~~
你给出的单词顺序就是从一月到十二月排好了的啊。

  • 给定表(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,sep,Oct,Nov,Dec),设取散 ...
    答:1 Aug 2 Dec 3 Feb 4 5 Jan 6 Mar 7 May 8 Jun 9 Jul 10 Sep 11 Oct 12 Nov 13 查找成功:开散列表:(7+2+2+2+2+3)/12=3/2 闭散列表:(1+1+1+1+2+2+3+2+2+5+6+1)/12=9/4 查找不成功:开散列表:(3+1+2+2+1+4+3+3+1+2+1+1+1)/12=25/12 闭...
  • 手表月份英语缩写是什么?
    答:手表月份的英文缩写如下:- 一月:Jan - 二月:Feb - 三月:Mar - 四月:Apr - 五月:May - 六月:Jun - 七月:Jul - 八月:Aug - 九月:Sep - 十月:Oct - 十一月:Nov - 十二月:Dec 请注意,这些缩写通常用于日期表示和时间记录,是英语中常见的用法。
  • 机械表上的APR是什么意思
    答:JAN、FEB、MAR、APR、MAY等都是月份的英文缩写,说明你这款天王手表是带有月历功能的表款。十二个月份的英文缩写分别是:一月 January 缩写为JAN 二月 February 缩写为FEB 三月 March 缩写为MAR 四月 April 缩写为APR 五月 May 缩写为MAY 六月 June 缩写为JUN 七...
  • 手表日历前面的英文缩写是什么意思
    答:Jan.一月(January);Fer.二月(February);Mar.三月(March);Apr.四月(April);May.五月(May);Jun.六月(June);Jul.七月(July);Aug.八月(August);Sep.九月(September);Oct.十月(October);Nov. 十一月(November);Dec.十二月(December)。二、星期 Mon.星期一(Monday);T...
  • 表(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec)顺序依次插入初...
    答:Jun May Aug Jul Sep Dec Oct Nov 抱歉,箭头出不来!广度排序的顺序就是:Jan、Feb、Mar、Apr、Jun、May、Aug、Jul、Sep、Dec、Oct、Nov
  • 已知长度为12的表:(Jan,Feb,Mar,Apr,May,June,July,Aug,Sep,Oct,Nov...
    答:1、我们先是定义这样一个Node结构。2、可以用Typedef重命名,C++中可以不写。3、然后我们定义一个数据元素,名为data。4、此时,我们递归调用这个结构,形成链表。5、此时,我们就能为这棵树定义一个节点和一棵树类型。6、不过,这个ElemType是有提前定义的,否则会无效命名。
  • 我买了一块天王手表,上面有JAN FEB MAR APR MAY等等英文缩写,这都是什...
    答:JAN、FEB、MAR、APR、MAY等都是月份的英文缩写,说明你这款天王手表是带有月历功能的表款。十二个月份的英文缩写分别是:十二个月份的英文缩写分别是:一月 January 缩写为JAN 二月 February 缩写为FEB 三月 March 缩写为MAR 四月 April 缩写为APR 五月 May 缩写为MAY 六月 June 缩写为JUN 七月 July...
  • 手表日历前面的英文缩写都是什么意思啊
    答:MAR是三月的英文缩写,手表上的月份英文缩写如下:一月简写是Jan.,January 英 ['dʒænjʊ(ə)rɪ],美 ['dʒænjʊ'ɛri]。二月简写是Feb.,February英 [ˈfebrʊərɪ],美 [ˈfebrʊerɪ;'f&#...
  • 手表英文几月怎么看
    答:jan一月、feb 二月、mar 三月、apr 四月、may五月、jun 六月、jul七月、aug 八月、sep九月、oct 十月、nov十一月、dec十二月。手表上的月份都是英文月份的缩写。
  • 十二个月的英文简写
    答:十二个月份的英文单词及缩写:一月January —— Jan.二月February —— Feb.三月March —— Mar.四月April —— Apr.五月May —— May.六月June —— Jun.七月July —— Jul.八月August—— Aug.九月September —— Sept.十月October —— Oct.十一月November —— Nov.十二月December—— Dec...