- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 maven仓库配置(最全)
<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd.
2021-07-19 11:18:46
5311
2
原创 VirtualBox设置桥接网络
查找了很多文章,都没有解决这个问题(因为全tm是xjb写,xjb抄的),要解决这个问题,首先要清楚什么是桥接网络。可以看到,桥接网络中宿主机和虚拟机是地位平等的,在同一网段的,然后利用同一个路由器与外界进行通信。那么一:宿主机和虚拟机的ip网段就必须相同,主机号不同宿主机可以用ipconfig查看网络ip虚拟机可以用ifconfig或者ip addr查看我用的是无线网,所以和无线网ip网段保持一致...
2021-07-13 21:50:09
10663
8
转载 1.1.3 算法
如前所述,程序是解决某个问题的指令序列。编程解决一个问题时,首先要找出解决问 题的方法,该解决方法一般先以非形式化的方式表述为由一系列可行的步骤组成的过程,然 后才用形式化的编程语言去实现该过程。这种解决特定问题的、由一系列明确而可行的步骤 组成的过程,称为算法(algorithm①)。算法表达了解决问题的核心步骤,反映的是程序的解 题逻辑。算法其实并不是随着计算机的发明才出现的东西。例如,早在两千多年前,古希腊数学 家欧几里德就发明了一种求两个自然数的最大公约数的过程,这个过程被认为是史上第一个 算法
2020-10-21 21:58:05
453
转载 1.1.2 计算机语言
如前所述,计算机解决问题的过程实质上是机械地执行人们为它编制的指令序列的过程。为了告诉计算机应当执行什么指令,需要使用某种计算机语言。这种计算机语言能够精 确地描述计算过程,称为程序设计语言或编程语言(programming language)。与计算机打交道的理想语言当然是像科幻电影所展示的那样,人类用自然语言与计算机(电影中更多的是机器人)进行对话。遗憾的是,由于自然语言的词语和句子往往有歧义, 既不精确也不简练,至少目前的计算机还不能很好地理解自然语言。所以计算机科学家设计 了人造语言来与计算机进
2020-10-21 21:54:09
403
1
原创 决策树ID3简单实现
from math import log# 初始化数据集def createDataSet(): dataSet=[ [1, 1, 'yes'], [1, 1, 'yes'], [1, 0, 'no'], [0, 1, 'no'], [0, 1, 'no'], ] labels = ["without water", "flippers"] return dataSet, labels.
2020-10-21 21:15:51
151
原创 贪心算法——分发糖果
题目:https://leetcode-cn.com/problems/candy/简单分析:从前往后扫描,从后往前扫描。向左看看,我比他分高,我就要比他多:向右看看,我比他分高,我就要比他多。多一个也行,小孩子不能贪。class Solution { public int candy(int[] ratings) { int n =ratings.length; if(n==0) return 0; int[] array = new in
2020-10-18 16:54:46
94
原创 贪心算法——分发饼干
题目:https://leetcode-cn.com/problems/assign-cookies/简单思路:先排序,再累计计数为什么是贪心,优先满足胃口小的孩子,用最少的饼干来喂给胃口最小的孩子,这样就可以达到一个局部最优class Solution { public int findContentChildren(int[] g, int[] s) { Arrays.sort(g); Arrays.sort(s); int coun
2020-10-18 15:58:26
229
原创 kmeans算法简单实现
# -*- coding:utf-8 -*-# kmeans简单实现"""kmeans是经典的无监督聚类方法。步骤可以分为以下几步:1.确定聚类的数目k2.随机初始化k个聚类中心3.根据准则(一般计算欧式距离)将数据分配到对应的聚类中心4.更新每个类别的聚类中心(均值)5.重复步骤2-步骤4若干次"""import numpy as npimport randomfrom collections import defaultdictimport matplotlib.p.
2020-10-17 17:33:59
1477
转载 数据结构——循环队列
循环队列的初始化,队空,队满,遍历,入队,出队操作#include<stdio.h>#include<stdbool.h>#include<stdlib.h>typedef struct Queue{ int *pBase; int front; int rear;}QUEUE,* PQUEUE;void init_...
2020-04-08 00:08:29
214
转载 数据结构——栈
栈的基本操作:初始化栈,进栈,出栈,清空栈,判断栈空。#include<stdio.h>#include<stdlib.h>#include<stdbool.h>typedef struct Node{ int data; struct Node* next;}NODE,*PNODE;typedef struct Stack{...
2020-04-07 21:55:31
106
转载 数据结构——单链表
对链表的基本操作:创建,遍历,求长度,插入,删除,排序#include<stdio.h>#include<stdlib.h>#include<stdbool.h>typedef struct Node{ int data; struct Node *pNext;}NODE,*PNODE;PNODE create_list();...
2020-04-06 22:35:38
292
转载 数据结构——图的基本概念
图看起来就像下图这样:在计算机科学中,一个图就是一些顶点的集合,这些顶点通过一系列边结对(连接)。顶点用圆圈表示,边就是这些圆圈之间的连线。顶点之间通过边连接。注意:顶点有时也称为节点或者交点,边有时也称为链接。一个图可以表示一个社交网络,每一个人就是一个顶点,互相认识的人之间通过边联系。图有各种形状和大小。边可以有权重(weight),即每一条边会被分配一个正数或者负数值...
2020-03-28 22:28:27
750
转载 数据结构——二叉树(五)红黑树,哈夫曼树
七:红黑树二叉查找树(BST)具备什么特性呢?1.左子树上所有结点的值均小于或等于它的根结点的值。2.右子树上所有结点的值均大于或等于它的根结点的值。3.左、右子树也分别为二叉排序树。下图中这棵树,就是一颗典型的二叉查找树:1.查看根节点9:...
2020-03-28 16:16:00
1083
转载 数据结构——二叉树(四)
五:B树首先补充一点,"B-树"就是“B树”,它们都是B-Tree的翻译,里面不是减号-,是连接符-。因为有人把B-Tree读成"B-树",让人误以为“B树”和"B-树"是两种树,实际上两者都是同一种树。还有,大家在读的时候千万不要读成“B减树”,读成“B树”就行了,不然就外行了。下面开始今天正文,我们依然从数据库的检索开始,我们知道数据库的索引是使用树结构来实现的,是因为树的查询效率高,...
2020-03-28 15:16:47
211
转载 数据结构——二叉树(三)
三:2-3树2-3 树作为一种平衡查找树,查询效率比普通的二叉排序树要稳定许多。但是2-3树需要维护两种不同类型的结点,查找和插入操作的实现需要大量的代码,而且它们所产生的额外开销可能会使算法比标准的二叉查找树更慢。2-3树:满足二分搜索树的基本性质,是一颗绝对平衡的树,节点可以存放一个或两个元素,每个节点有2个或3个孩子。如下图所示都是2-3树,左边是节点存放了一个元素,右边是节点存...
2020-03-28 13:45:40
224
转载 数据结构——二叉树(二)
一:二叉搜索树平衡二叉树是在二叉排序树的基础上发展而来的,那为什么要引入二叉搜索树呢?所谓二叉搜索树(Binary Search Tree),又叫二叉排序树,简单而言就是左子树上所有节点的值均小于根节点的值,而右子树上所有结点的值均大于根节点的值,左小右大,并不是乱序,因此得名二叉排序树。一个新事物不能凭空产生,那二叉搜索树又有什么用呢?有了二叉搜索树,当你要查找一个值,就不需要遍...
2020-03-28 13:11:55
785
转载 数据结构——二叉树(一)
一般二叉树、完全二叉树、满二叉树、线索二叉树、霍夫曼树、二叉排序树、平衡二叉树、红黑树、B树。1 重点概念1.1 结点概念结点是数据结构中的基础,是构成复杂数据结构的基本组成单位。1.2 树结点声明本系列文章中提及的结点专指树的结点。2 树2.1 定义树(Tree)是n(n>=0)个结点的有限集。n=0时称为空树。在任意一颗非空树中:1)有且仅有一个特...
2020-03-28 00:24:38
395
转载 数据结构——计数排序
01 计数排序算法概念计数排序不是一个比较排序算法,该算法于1954年由 Harold H. Seward提出,通过计数将时间复杂度降到了O(N)。02 基础版算法步骤第一步:找出原数组中元素值最大的,记为max。第二步:创建一个新数组count,其长度是max加1,其元素默认值都为0。第三步:遍历原数组中的元素,以原数组中的元素作为count数组的索引,以原数组中的元素出...
2020-03-27 20:04:44
170
转载 数据结构——堆排序
堆排序的时间复杂度O(N*logN),额外空间复杂度O(1),是一个不稳定性的排序。一 准备知识堆的结构可以分为大根堆和小根堆,是一个完全二叉树,而堆排序是根据堆的这种数据结构设计的一种排序,下面先来看看什么是大根堆和小根堆1.1大根堆和小根堆性质:每个结点的值都大于其左孩子和右孩子结点的值,称之为大根堆;每个结点的值都小于其左孩子和右孩子结点的值,称之为小根堆。如下图...
2020-03-26 23:08:26
1606
转载 数据结构——希尔排序
#include<stdio.h>int main(){ void shell_sort(int a[]); int i,a[6]={5,1,3,8,2,4}; shell_sort(a); for(i=0;i<6;i++){ printf("%5d",a[i]); } printf("\n"); return 0;}void shell_sort...
2020-03-18 21:07:27
185
转载 数据结构——快速排序
#include<stdio.h>int main(){ void quick_sort(int s[],int l,int r); int i,j,temp,a[6]={5,1,3,8,2,4}; quick_sort(a,0,5); for(i=0;i<6;i++){ printf("%5d",a[i]); } printf("\n"); return ...
2020-03-18 20:00:48
182
转载 数据结构——冒泡排序
#include<stdio.h>int main(){ int i,j,temp,a[6]={1,5,3,8,2,4}; for(i=0;i<5;i++){ for(j=0;j<5;j++){ //记录轮数 if(a[j]>a[j+1]){ //逐轮比较 temp=a[j]; a[j]=a[j+1]; a[j+1]=temp...
2020-03-18 11:06:36
100
转载 数据结构——简单选择排序
#include<stdio.h>int main(){ int i,j,temp,a[6]={1,5,3,8,2,4}; for(i=0;i<5;i++){ for(j=i+1;j<6;j++){ if(a[i]>a[j]){ temp=a[i]; a[i]=a[j]; a[j]=temp; } } } for...
2020-03-18 10:49:41
78
转载 数据结构——直接插入排序
#include<stdio.h>int main(){ int i,j,temp,arr[6]={1,5,3,8,2,4}; for(i=1;i<6;i++){ j=i; while(j>0&&arr[j]<arr[j-1]){ //不断向前比较 temp=arr[j]; arr[j]=arr[j-1]; arr[...
2020-03-18 10:35:33
123
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人