自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 设计模式-创建者模式-单例模式

单例模式中的饿汉式以及懒汉式的实现方法

2022-11-20 17:31:56 232

原创 Java---类和对象

Java中类与对象的简单介绍

2021-11-27 21:37:41 519

原创 Java---时间复杂度/空间复杂度

Java中时间复杂度和空间复杂度的概念以及大O表示法的练习

2021-11-26 23:44:13 344

原创 Java---数组---多数元素

给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。对于数组中的多数元素,本文章列举三种求法:1.排序法 因为数组中的多数元素的数量是大于数组长度的一半的,所以将数组排序后,对于长度为奇数的数组,最中间的那个数一定是数组中的多数元素;而对于长度为偶数的数组来说,最中间的数有两个,而这两个数一定都为多数元素.eg:import java.util.Arrays;public class Test { ...

2021-11-24 19:57:11 872

原创 Java---汉诺塔问题

一.起源:  汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。二.抽象为数学问题:  如下图所示,从左到右有A、B、C三根柱子,其中A柱子上面有从小叠到大的n个圆盘,现要求将A柱子上的圆盘移到C柱子上去,期间只有一个原则:一次只能移到一个盘子且大盘子不能在小盘子

2021-11-22 19:20:58 415

原创 Java---数组---简单操作

本质上,数组其实就是创建并存放相同数据类型的变量.1.遍历数组所谓 "遍历" 是指将数组中的所有元素都访问一遍, 不重不漏. 通常需要搭配循环语句. 最常用的就是for循环.eg:int[] arr = {1, 2, 3}; for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); }通过这个简单的代码可以看出,访问数组中的元素使用"数组名[数组下标]"这个方法来访问.Java中

2021-11-21 17:51:50 377

原创 Java---方法---递归以及重载

Java中的方法类似于C语言中的函数,其作用就是将一些固定作用的代码片段存为一个整体,当需要使用时直接调用,就可以使代码整体变得条例清晰.方法的递归当一个问题满足以下三个要求时,就可以使用递归来解决这个问题:1.一个比较大的问题可以拆分为多个子问题.2.拆分后的子问题与原问题除了数据规模不同,其他解决思路完全相同.3.存在终止递归的条件.eg:使用递归求一个数num的阶乘.按照上面的思路一步一步来进行操作.首先,num这个数的阶乘可以转换为num * (num-1)!,所

2021-11-19 21:37:20 353

原创 Java---数组---冒泡排序与数组逆置

一.冒泡排序冒泡排序是一种简单的排序方法,只需要进行数字的比较即可.import java.util.Scanner;public class Test { public static void main(String[] args) { int [] arr = {5,2,3,6,9,8,7,4,1,0}; BubbleSort(arr); System.out.println(Arrays.toString(arr));

2021-11-17 20:28:43 420

原创 初识Java---基本知识

一.常量常量:声明后不能改变的变量.final 关键字修饰的变量.eg:final int a = 10;字面值常量:直接写出来的值,这种值称为字面值常量.二.数据类型转换1).从小类型->大类型(设计到运算的时候会自动提升)eg:int a = 10;long b = 20;long c = a + b;(a是int类型,int+long,先将int提升为long而后进行计算)2).从大类型->小类型(强制转换类型,有精度丢失的风险)因为大类型保存值得范

2021-11-15 19:59:51 290

原创 C语言结构体的应用——通讯录的实现

C语言中的结构体其实就是对现实生活中一个事物进行抽象化的结果。对于通讯录来说,通讯录里的成员我们只需要知道每个成员的姓名,性别,年龄,电话号以及地址。1.创建并初始化通讯录//创建通讯录typedef struct personinfo { char name[1024]; char sex[1024]; char age[1024]; char phonenum[1024]; char address[1024];}personinfo;typedef struct Add

2021-11-03 18:13:43 403

原创 C语言库函数的实现

C语言中有很多库函数,本篇博客来实现一些简单的库函数。1.strlen函数的实现strlen函数的主要功能是计算字符串str的长度,直到空结束字符,但不包括空结束字符。int mystrlen(const char* str){//count为字符串长度 int count = 0;//利用while循环来实现字符串长度的实现 while (*str){ count++; str++; } return count;}int main() { char str[..

2021-10-31 00:44:52 923

原创 C语言实现水仙花数

“水仙花数”是指一个n位数,其各位数字的n次方之和确好等于该数本身,如:153=1^3+5^3+3^3,则153是一个“水仙花数”。这里我们先来打印0~1000000之间的水仙花数。1.先用for循环来遍历0~1000000之间的所有数字2.每次遍历一个数字,就求出这个数字的位数。3.用这个数模除10,在用这个数除以10的结果进行循环,直到这个数除以10的结果为0.再调用库函数pow来计算这个数每一位的位数次方和。4.最后一步判断这个数每一位的位数次方和是否与这个数相等。相等即为水仙花数

2021-10-25 22:38:48 8736

原创 C语言—井字棋的实现

模拟人机对战。首先,我们需要一个简单的井字棋棋盘。#define COL 3#define ROW 3//利用宏定义来定义棋盘的大小,因为井字棋需要一个3*3的棋盘,为了避免魔幻数字(在后续代码中出现,不能很直观的看出是长还是宽)的出现,我们用ROW和COl来代替void init_board(char board[ROW][COL]) { for (int row = 0; row < ROW; row++) { for (int col = 0; col < CO..

2021-10-21 15:00:06 2402 1

原创 用函数求任意数的阶乘之和

其实求一个数的阶乘并不复杂,只需要从1开始乘到那个数就可以。int main() { int n = 0; scanf("%d", &n);//n为需要求阶乘的数字 int i = 0; int sum_num = 1; //利用一个for循环来实现相乘 for (i = 1; i <= n; i++) { sum_num = sum_num * i; } printf("%d", sum_num);}当我们会求取一个数的阶乘时,求阶乘之和的问题也就转变为

2021-10-02 16:08:54 4468

原创 求一个含有十个整数的数组中最大值

1.首先需要创建数组。int arr[10] = { 0 };//创建并且初始化数组。2.其次需要将十个整数输入创建好的数组中。//利用for循环来储存整数for (i = 0; i <= 9; i++) { scanf("%d", &arr[i]); }这里我用一个for循环来给这个数组中储存变量。通过 &arr[i] 来取到每个整数的位置并且把对应的整数存放进去。3.最终利用一个 for 循环来比较数组中每个整数的大小。for (...

2021-09-29 20:32:11 2096

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除