1、个人总结及想法: (1)1.8相比较于1.7的变化? HashMap的底层数据结构大家应该都比较清楚了,就是数组+链表,链表主要用来解决hash冲突,使用了链地址法的方式来解决,1.8的改动主要就是hash冲突时候,一是在进行链表插入时由1.7的头插法变成了尾插法,第二个原来链表是一个单链表,但 ...
分类:
其他好文 时间:
2018-02-26 17:36:04
阅读次数:
172
what数据结构? 数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。 简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中。 比如:列表、集合与字典等都是一种数据结构。 N.Wirth: “程序=数据结构+算法” 数据结构按照其逻辑结构可分为线性结构 ...
分类:
其他好文 时间:
2018-02-04 12:43:16
阅读次数:
260
给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字。 输入格式: 输入首先给出一个正整数K,随后是若干正整数,最后以一个负整数表示结尾(该负数不算在序列内,不要处理)。 输出格式: 输出倒数第K个位置上的数据。如果这个位置不存在,输出错误信息NULL。 输入样例: 输出样例: ...
分类:
其他好文 时间:
2018-01-28 12:42:15
阅读次数:
824
1 #include "stdio.h" 2 #include "stdlib.h" 3 4 #define OK 1 5 #define ERROR 0 6 7 typedef int elemType; 8 typedef struct _LNode{ 9 elemType data; 10 s... ...
分类:
其他好文 时间:
2017-11-28 14:22:31
阅读次数:
210
/*************************************************************** Author :h-j-w Created Time :2017-11-26 File Name :头插法、尾插法 ***************************... ...
分类:
其他好文 时间:
2017-11-26 12:35:39
阅读次数:
378
算法示意图:#include<iostream>
usingnamespacestd;
structDATA
{
intid;
charname[20];
};
structinfo
{
DATAdata;
info*pNext;
};
//头节点
info*g_Head=NULL;
voidCreateList()
{
//创建头节点
info*pHead=newinfo;
if(pHead)
{
pHead->data.id=NULL;
memset(..
分类:
编程语言 时间:
2017-09-24 18:22:04
阅读次数:
213
1, 数据结构三要素: 1,逻辑结构:线性和非线性 2,存储结构:顺序,链式,索引,散列 3,数据运算:算法 具体时间复杂度与问题的规模和初始条件相关,分最佳和最大 2, 线性表: 无头结点: 头插法:s->data=ch;s->next=head;head=s; 尾插法:rear->next=s; ...
分类:
其他好文 时间:
2017-09-23 21:27:30
阅读次数:
219
题目:输入两个递增排序的列表,合并这两个链表使新的链表结点按照递增排序。 代码: 1 #include<stdio.h> 2 #include"malloc.h" 3 typedef struct node 4 { 5 struct node *next; 6 int data; 7 }*ListN ...
分类:
编程语言 时间:
2017-08-18 23:45:15
阅读次数:
236
基本原理就是尾插法建立链表(当然,也可以用头插法建立链表),重点是冒泡排序法中的两层for循环的参数设置,设置两个链表指针p、q: 第一个用来指向头结点后一个(p = head ->next)(p还有个作用就是排序的步骤数),第二个用来指向头结点后一个的后一个(q = p -> next),每次内层 ...
分类:
编程语言 时间:
2017-08-08 00:28:18
阅读次数:
199
训练一下尾插法和循环链表的使用。 运行效果: 以前不会尾插法的时候,我的循环链表是这样的: 这是我用以前的方法实现的,但有很多问题因为这样的方法会找不到头结点的,因而只有一部分可以成功实现效果: (一) (二) ...
分类:
其他好文 时间:
2017-08-06 15:00:40
阅读次数:
143