- 博客(20)
- 收藏
- 关注
原创 JVM内存布局是怎样的
答:不同虚拟机实现可能略微有所不同,但都会遵从 Java 虚拟机规范,Java 8 虚拟机规范规定,Java 虚拟机所管理的内存将会包括以下几个区域:程序计数器(Program Counter Register)Java 虚拟机栈(Java Virtual Machine Stacks)本地方法栈(Native Method Stack)Java 堆(Java Heap)方法区(Meth...
2019-08-28 15:49:08
164
原创 解决哈希冲突
答:哈希冲突的常用解决方案有以下 4 种:开放定址法:当关键字的哈希地址 p=H(key)出现冲突时,以 p 为基础,产生另一个哈希地址 p1,如果 p1 仍然冲突,再以 p 为基础,产生另一个哈希地址 p2,循环此过程直到找出一个不冲突的哈希地址,将相应元素存入其中;再哈希法:这种方法是同时构造多个不同的哈希函数,当哈希地址 Hi=RH1(key)发生冲突时,再计算 Hi=RH2(key),...
2019-08-28 15:47:38
287
原创 Java集合类
集合类1.Java类集简介1.1Java类集引出1.2 Collection接口1.3Map接口1.4Java集合框架体系结构(未全部列出)2.List接口2.1 List接口概述2.2 ArrayList(优先考虑)2.3 Vector(使用较少)2.4 LinkedList3.Set集合接口3.1 Set接口常用子类3.2TreeSet排序分析3.3 重复元素判断4.Map集合1.Java类...
2019-08-18 17:02:49
500
原创 java实现七大排序
package com.tx;public class Sort { /** * 冒泡排序 * 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 * 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 * 针对所有的元素重复以上的步骤,除了最后一个。 * 持续每次对越来越少的元素重...
2019-04-19 16:06:12
217
原创 有关链表的部分面试题
#include "SList.h"// 倒叙打印链表 void ReversePrint(Node *pFirst){ Node *last = NULL; Node *cur = pFirst; while (last != pFirst) { cur = pFirst; while (cur->next != last) { cur = cur->...
2018-10-18 15:27:39
200
原创 顺序表SeqList
SeqList.h#ifndef __SEQLIST_H__#define __SEQLIST_H__#include <stdio.h>#include <assert.h>#include <string.h>#define MAX 10typedef int DataType;typedef struct SeqList{ D...
2018-10-18 14:52:40
528
原创 单向有头不循环链表
链表是一种常见的基础数据结构,是一种线性表,是一种物理存储单元上非连续、非顺序的存储结构。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括存储数据元素的数据域和存储下一个结点地址的指针域两个部分。 相比于线性表顺序结构,操作复杂。数据元素的逻辑顺序也是通过链表中的指针链接次序实现的。给出头文件:#ifndef __SLIST_H__#define __...
2018-09-22 23:09:39
226
原创 模拟实现strlen,strcpy,strcat,strstr,strcmp,memcpy,memmove,strncpy,strncpy,strncat,strncmp。
模拟实现strlen 的三种方式模拟实现strcpy模拟实现strcat模拟实现strstr模拟实现strcmp模拟实现memcpy模拟实现memmove模拟实现strlen 的三种方式strlen所作的仅仅是一个计数器的工作,它从内存的某个位置开始扫描,直到碰到第一个字符串结束符’\0’为止,然后返回计数器值(长度不包含’\0’)。计数器方式...
2018-07-31 20:32:42
411
1
原创 右旋字符串
#include <stdio.h>#include <assert.h>#include <string.h>void reverse(char*left, char*right)//旋转字符串{ assert(left && right); while (left<right) { cha...
2018-07-31 15:53:28
490
原创 C语言实现三子棋小游戏
游戏思路初始化棋盘打印棋盘玩家走打印棋盘判断输、赢、平局电脑走打印棋盘判断输、赢、平局 如此3–8步循环直至游戏结束实现这个小游戏我们通过test.c测试源文件,game.c游戏源文件以及game.h头文件构成。测试代码:#define _CRT_SECURE_NO_WARNINGS 1//测试文件 test.c#include <tx...
2018-07-25 17:36:14
245
转载 如何正确的使用 const
1.const 修饰变量 对于一个字符指针的定义char * p;加上const关键字时无非有三种方法,即把const放在前中后三个位置。那么他们之间有什么区别呢? 1 const char * p1;//表示p1指向了的字符串不可更改 2 char const * p2;//同上 3 char * const p3;//表示p2指针的指向不可更改注意1和2的意义完全相同,...
2018-07-25 15:04:23
175
原创 数组的简单学习
1.一堆数组的创建和初始化1.1数组的创建1.2数组的初始化2.一堆数组的使用3.一堆数组在内存中的存储4.指针的初步介绍5.一堆数组的指针访问6.二维数组的创建和初始化7.二维数组的使用8.二维数组在内存中的存储9.二维数组的指针访问1.一堆数组的创建和初始化1.1数组的创建数组是一组相同类型元素的集合 数组的创建方式:type_...
2018-07-03 18:34:02
448
原创 C语言操作符的简单学习
1.算数操作符C提供了所有常用的算术操作符: + - * / % 除了%操作符,其余几个操作符都是既适用于浮点类型又适用于整数类型。当/操作符的两个操作数都是整数时,它执行整除运算,在其他情况下则执行浮点数除法。%为取模操作符,它接受两个整型操作数,把左操作数除以右操作数,但它返回的值是余数而不是商。2.移位操作符<<左移操作符 >>右移操作符 ...
2018-06-17 18:57:48
465
原创 使用单精度浮点型float解决一元二次方程
我们进行代码的编写前需要简单的了解一下#define和float 简单的define定义 #define EXP 0.0000001 一个简单的EXP就定义好了,它代表0.0000001,如果在程序里面写if(i#define EXP 0.0000001#include &lt;stdio.h&gt;#include &lt;math.h&gt;int main(){...
2018-06-04 15:53:09
775
原创 对整型,浮点型的进一步学习,以及调用外部函数的初体验。
计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。这是一个比较简单的利用for循环就可以完成的代码。需要注意的是如果定义sum来计算和的话,sum需要使用float来定义。int main(){ int i = 0; float sum = 0.0; int j = 1; for (i = 1; i &lt;=...
2018-06-04 15:18:22
254
原创 根据整形变量的学习进行的几个代码研究
一丶互换两个整形变量 这里提供两种方法。 1.定义一个中间变量 比方说开始定义两个整形a,b. 之后在定义一个正形变量c。 通过c这个桥梁我们可以实现a,b的互换。 就好像我们有两个桶装了不等量的水,然后还有一个空桶,我们就可以利用这个空桶, 将两个桶里的水互换。 实现代码如下:#include&lt;stdio.h&g...
2018-05-30 21:23:42
290
转载 判断一个数是否为素数的程序改进
其实n不必被2~(n- 1)范围内的各整数去除,只须将n被2~n/2间的整数除即可,甚至只须被2~√n 之间的整数除即可。例如,判断17是否素数,只须将17被2, 3和4除即可,如都除不尽,n必为素 数。这样做可以大大减少循环次数,提高执行效率。为方便,可以定义一个整型变量k(其值为√n的整数部分); 如果n不能被2~k(即√n)之间的任一整数整除,则在完成最后一次循环后,i还要加1,因此i ...
2018-05-27 23:16:57
777
原创 判断1000-2000之间的闰年
//#include<stdio.h>//int main()////{// int year;// printf("输入年份:\n");// scanf_s("%d", &year);// // //闰年:能被400整除 或 能被4整除但不能被100整除 "四年一闰,百年不闰,四百年再闰"//// if ((year % 400 == 0) || (year % 100 !...
2018-05-27 18:03:39
215
原创 利用for循环输出9*9乘法口诀表
include <stdio.h>//利用for循环输出9*9乘法口诀表int main(){ int i, j; for (i = 1; i <= 9; i++) { for (j = 1; j <= i; j++) { printf("%d*%d=%d ", i, j, i*j); } printf("\n"...
2018-05-27 18:02:24
4816
1
原创 C语言打印100-200之间的素数
#include<stdio.h> //打印100--200之间的素数int main(){ int i = 0; int count = 0; //素数的个数 for (i = 100; i <= 200; i++) { int j = 0; for (j = 2; j < i; j++) ...
2018-05-27 18:01:45
284
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人