4 dxt_snow

尚未进行身份认证

我要认证

要搞算法了呢。。。

等级
TA的排名 4w+

希尔排序算法

希尔排序算法代码import java.util.Arrays;/** * 实现希尔排序 * 时间复杂度:?? * 稳定性:不稳定,一次插入排序是稳定的,但在不同的插入排序过程中,相同的元素可能在各自的插入排序中移动,最后其稳定性就会被打乱 * @author dxt * */public class ShellSort { public static void main(String[] args) { int[] array = {9, -1, 3, 5, -5, 6, 4}

2020-10-11 14:32:52

1.4 Git基本操作之删除文件找回及文件比较

1.4 Git基本操作之删除文件找回及文件比较删除本地库文件后找回删除暂存区文件后找回删除文件总结比较文件删除本地库文件后找回删除暂存区文件后找回删除文件总结比较文件

2020-09-30 14:49:10

1.3 Git基本操作之版本前进与后退

1.3 Git基本操作之历史版本查看基本命令命令流程操作展示基本命令命令功能git log查看历史提交记录命令流程操作展示使用 git log 命令查看本地库的历史提交记录。从信息中可以看出有两条提交记录。其中每个提交都有一个Hash值(哈希值),哈希值唯一标识每次提交;每个提交记录都记录了提交人的签名和Email,其中我没有为TestGit设置项目级别的签名,它就使用了我设置的系统签名;每个提交记录还包含了对应提交操作执行时的时间;每个提交记录还包含了我们为每次提交

2020-09-29 09:56:15

csp试题2:风险人群筛查

csp试题2:风险人群筛查题目分析代码总结题目题目背景      某地疫情爆发后,出于“应检尽检”的原则,我们想要通知所有近期经过该高危区域的居民参与核酸检测。问题描述      想要找出经过高危区域的居民,分析位置记录是一种简单有效的方法。      具体来说,一位居民的位置记录包含 t 个平面坐标 (x1, y1)

2020-09-28 19:34:17

csp试题1:称检测点查询

csp试题1:称检测点查询题目分析代码总结题目题目背景      2020 年 6 月 8 日,国务院联防联控机制发布《关于加快推进新冠病毒核酸检测的实施意见》,提出对“密切接触者”等八类重点人群“应检尽检”,其他人群“愿检尽检”。问题描述      某市设有 n 个核酸检测点,编号从 1 到 n,其中 i 号检测点的位置可以表示为一个平面整数坐标 (xi, yi)。&nbsp

2020-09-28 10:06:24

1.2 Git基本操作之提交文件到本地库

1.2 Git基本操作基本命令基本命令

2020-09-26 14:42:13

1.6 判断一个字符串是否由重复子字符串组成

1.6 判断一个字符串是否由重复子字符串组成题目描述解题思想一代码一题目描述      给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母。例1输入: "abcabc"输出: True解释: 可由子字符串 "abc" 重复两次构成。例2输入: "abac"输出: False解释:字符串不是由子字符串重复多次构成的。例3输入: "abababab"输出: True解释: 可由

2020-09-25 23:05:56

1.1 Git创建仓库及设置签名

Git简介安装Git本地结构Git本地库操作本地库初始化简介Git 是一个开源的分布式版本控制系统功能(1)协同修改:多人可以同时修改服务器端的同一个文件(2)数据备份:不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。(3)版本管理:在保存每一个版本的文件信息的时候做到不保存重复信息,Git采用了文件快照的方式。(4)权限控制:对团队中参与开发的人员进行权限控制;对团队外开发者贡献的代码进行审核。(5)历史记录:查看修改人、修改时间、修改内容、日志信息;将本地文件恢复到某一

2020-09-24 21:15:04

1.3 八皇后问题

1.3 八皇后问题问题描述思路分析问题描述      在8x8格的国际象棋棋盘上拜访八个皇后,使其不能相互攻击,即:任意两个皇后都不能处于同一行、同一列或同一斜线上。问有多少中摆法。思路分析第一个皇后放在第一行第一列第二个皇后放在第二行第一列,然后判断是否合理(不能相互攻击),如果不合理,继续放在第二列、第三列、依次把所有列找完,直到找到一个合适的继续放置第三个皇后,放在第三行的第一列、第二列…直到第八个皇后也被放在一个不冲突的位置,

2020-09-20 09:57:03

1.2 Hanoi塔问题

1.2 Hanoi塔问题问题描述分析代码问题描述      Hanoi塔问题由3个竖立着的塔座和一组中间有孔的圆盘组成,圆盘中间有个孔以便沿塔座柱移动叠放,每个圆盘有不同的直径。Hanoi塔的初始状态是所有的圆盘全部大小有序地叠放在一个塔座上,最大圆盘放在最底层,如下图所示。      Hanoi塔问题的目标是:将所有的圆盘从原始塔座(第一个塔座)上移动到目标塔座(第三个塔座)上。

2020-09-19 16:17:24

1.1 递归基础介绍

4.1 递归基础介绍基本概念递归与迭代递归需要遵循的规则递归解决迷宫问题基本概念递归是一种程序设计技术,允许一个方法调用自己以达到最终目的。递归与迭代迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。即迭代过程的每一次结果,都是由对前一次所得结果施行相同的运算步骤得到的。理论上递归和迭代可以相互转换。迭代一定可以转化为递归,递归不一定能转化为迭代。实际应用中递归的算法要比迭代效率低,因为程序每调用一

2020-09-18 21:55:45

1.5 滑动窗口问题

1.5 滑动窗口问题问题代码问题描述给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例输入: "aa"输出: 1解释: 因为无重复字符的最长子串是 "a",所以其长度为 1。输入: "abcdea"输出: 5解释: 因为无重复字符的最长子串是 "abcde"和"bcdea",它们的长度都为 5。输入: "abcdcbead"输出: 5解释: 因为无重复字符的最长子串是 "dcbea"或"cbead",其长度都为 5。解题思想滑动窗口思想定义两个指

2020-09-16 22:26:25

3.3 前缀、中缀和后缀表达式

4.2 前缀、中缀和后缀表达式前言基于三种表达式特点的定义定义示例解释基于二叉树定义前言      我第一次接触这三种表达式是在数据结构课程的二叉树遍历部分,所以下面大部分是从二叉树遍历角度来解释这三种表达式。基于三种表达式特点的定义定义前缀表达式:在前缀表达式中,操作符位于两个操作数之前,操作数从从左到右顺序出现。中缀表达式:在中缀表达式中,每个二元操作符出现在左操作数之后,右操作数之前。后缀表达式:在后缀表达式中,操作符跟在两个

2020-09-15 15:34:09

3.2 使用栈结构实现后缀表达式计算器

3.2 使用栈结构实现后缀表达式计算器后缀表达式后缀表达式求值思路后缀表达式计算器实现后缀表达式定义:后缀表达式中,运算符位于操作数(前一个和后一个)之后。示例:算术表达式(3+4)x5-6对应的后缀表达式为3 4 + 5 x 6 -。后缀表达式求值思路思路从左到右扫描后缀表达式,遇到数字时,将数字压入栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们做相应的计算,然后将结果入栈;重复上述过程直到表达式最右端,最后运算得出的值即为表达式的结果。解释当一个算术表达式由中缀表达式形式(1+

2020-09-14 20:38:33

4.1 简易计算器实现对中缀表达式的计算

4.1 简易计算器实现对中缀表达式的计算功能要求思路代码总结功能      输入一个算式,然后返回算式的计算结果。要求算式中只能包含 + - * / 四种运算操作符。算式中的数据只能是0或正整数,如果在运算过程中产生了小数,那么结果大概率是不正确的。程序中没有对特殊情况做处理,比如0不能做除数。思路      由于只有+ - * / 四种运算操作符,所以遍历两次操作符,

2020-09-14 08:22:31

3.1 栈结构实现

3.1 栈结构实现栈代码实现栈栈是一个先入后出的有序列表。栈中元素的添加与删除都发生在线性表的同一端,允许插入和删除的一端被称为栈顶,另一端被称为栈底。最先入栈的元素在栈底,最后入栈的元素在栈顶。最先删除的元素为最后入栈的元素,最后删除的元素为最先入栈的元素。代码实现主要是想push()和pop()两个方法代码import java.util.Scanner;/** * 实现栈,并测试其功能 * @author dxt * */public class ArraySta

2020-08-29 12:38:36

2.3 单向环形链表实现及约瑟夫问题

2.3 单向环形链表实现及约瑟夫问题单向环形链表约瑟夫问题代码实现单向环形链表可以带头节点,也可以不带头节点。虽然环形链表是一个环,但在实现过程中,需要确定第一个数据节点,在单向链表的基础上,使最后一个节点指向第一个数据节点,就构成了单向环形链表。约瑟夫问题Josephu(约瑟夫)问题:      设编号为1、2、…、n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的那个人出列,它的下一位又从1

2020-08-28 21:32:31

2.2 java实现双向链表

2.2 java实现双向链表双向链表实现的方法实现代码双向链表单链表的缺点(1)查找的方向只能是一个方向(2)单链表不能自我删除,需要依靠辅助节点双向链表的特点(1)查找的方向有两个。(2)可以进行自我删除,删除操作不需要辅助节点实现的方法void add(Node2 node):向双向链表尾添加节点。void printList():从头遍历,输出链表。void update(Node2 node):将链表中与 node节点相同id的节点的 数据(name)改为node节点的数

2020-08-25 18:39:18

2.1 Java实现单链表

2.1 Java实现单链表链表实现代码链表链表以节点的方式存储数据,特点是:线性结构、链式存储。每个节点包含 data域 和 next域,data域保存数据,next域用来指向下一节点。链表的各个节点在内存中不一定是连续存储。链表分带头节点的链表和不带头节点的链表,头节点指向链表中第一个数据节点。实现代码void add(Node n):将节点n添加到链表尾。在遍历过程中,可以对temp.next进行判断。void addByOrder(Node n):假设链表中 节点 按照 id 从

2020-08-25 00:21:27

1.2 队列的数组实现

1.2 数组模拟队列队列数组模拟队列一队列队列是一个有序列表,其特点是先入先出,即先进队列的元素先出队列。数组模拟队列一队列只能使用一次,没有实用价值。使用数组模拟此队列时,需要定义四个属性:(1)arr[ ]:数组,用于存放队列中的元素(2)maxSize:int,用于规定队列的最大长度(3)front:int,arr[front+1]始终为队列的第一个元素(4)rear:int,arr[rear]始终表示队列中最后一个元素代码:import java.util.Scanne

2020-08-23 22:19:57

查看更多

勋章 我的勋章
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。