- 博客(42)
- 收藏
- 关注
原创 数据结构1-9(二叉树的实现)
//定义一个树的接口public interface Tree<E> { int size(); boolean isEmpty(); void clear(); void add(E element); void remove(E element); boolean contains(E element);}import java.util.Comparator;public class BinarySearchTree<E&g
2021-11-14 13:53:03 461
原创 数据结构1-8-3(Hashset)
public interface IHashset<E> { void add(E key); void remove(E key); void clear(); boolean contain(E key); boolean isEmpty(); int size();}public class MyHashset<E> implements IHashset<E>{ private MyHashMap<
2021-11-09 19:05:07 108
原创 数据结构1-8-2(Hashmap)
public interface IMap<K,V> { void clean(); boolean containKey(K key); boolean containValue(V value); V get(K key); boolean isEmpty(); MyHashset keySet(); void put(K key, V value); void putAll(IMap <? extends K,? ext
2021-11-09 19:04:16 75
原创 数据结构1-8-1(哈希表)
import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Random;public class Hash { public static void main(String[] args) { testHashMap(); } public static void testHashMap() { Random r = ne
2021-11-09 19:02:54 351
原创 数据结构1-7-5(猫狗收容所)
import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;public class 猫狗收容所 { private static class Animal { int type; int time; static int timeline; public Animal(int typeNumber) { t
2021-11-09 19:01:01 79
原创 数据结构1-7-4(对栈进行排序)
import java.util.ArrayList;import java.util.Stack;public class 对栈进行排序 { public ArrayList<Integer> twoStackSort(int[] number) { Stack<Integer> source = new Stack<>(); for (int i = number.length - 1; i >= 0; i--) {
2021-11-09 19:00:24 35
原创 数据结构1-7-3(两个栈完成队列)
import java.util.Stack;public class 两个栈完成队列 { Stack<Integer> stack1 = new Stack<>(); Stack<Integer> stack2 = new Stack<>(); public void push(int node) { if (stack1.empty()) { move(stack2, stack1);
2021-11-09 18:59:41 43
原创 数据结构1-7-2(队列)
public interface IQueue <T>{ void enqueue (T e);//入队 T dequeue();//出队 public int getSize(); public boolean isEmpty(); public T peek();//取队首元素}public class MyQueue<T> extends DoubleList<T> implements IQueue<T>
2021-11-09 18:58:53 31
原创 数据结构1-7-1(栈)
public interface IStack<T> { void push(T e);//入栈 T pop();//出栈 boolean empty();//是否空栈 int getSize(); T peek();}import java.util.EmptyStackException;public class MyStack<T> extends DoubleList<T> implements IStac
2021-11-07 17:53:16 42
原创 数据结构1-6-7(链表例题-有环链表开头结点)
import java.util.HashSet;public class 有环链表开头结点 { public class ListNode { private Object data; private ListNode next; public ListNode(Object data) { this.data = data; } public ListNode returnFirstN
2021-11-06 17:23:39 64
原创 数据结构1-6-6(链表例题-用基准值分区链表)
public class 用基准值分区链表 { public class ListNode { private ListNode next; private int val; public ListNode(int val) { this.val = val; } } public ListNode partition(ListNode phead, int x) { List
2021-11-06 17:23:03 62
原创 数据结构1-6-5(链表例题-链表加法)
public class 链表加法 { public class ListNode { private int data; private ListNode next; public ListNode(int data) { this.data = data; } } public ListNode plusAB(ListNode A, ListNode B) { return
2021-11-06 17:22:18 71
原创 数据结构1-6-4(链表例题-桶排序)
public class 桶排序 { public static void bucSort(int[] arr, int min, int max){ int[] temp = new int[max-min+1]; for(int i=0; i<arr.length; i++){ temp[arr[i]-min]++; } for(int j=0; j<temp.length; j++){
2021-11-06 17:21:22 61
原创 数据结构1-6-3(链表例题-删除单链表中某结点)
public class 删除单链表中某结点 { public class ListNode { protected Object data; protected ListNode next; public ListNode(Object data) { this.data = data; } } public boolean removeNode(ListNode pNode) {
2021-11-06 17:20:37 149
原创 数据结构1-6-2(链表例题-查找倒数第K个结点)
public class 查找倒数第K个结点 { public int data; // 存放数据的属性 public 查找倒数第K个结点 next; //指向下一个节点 // 查找链表中倒数第k个结点 public static 查找倒数第K个结点 CountdownKListNode(查找倒数第K个结点 head, int k) { // 判断链表是否为空以及k是否为小于0的数 if (head == null || k < 0)
2021-11-06 17:19:44 94
原创 数据结构1-6-1(链表例题-删除重复结点)
import java.util.HashSet;public class 删除重复结点 { private static class Node { Node next; Object value; public Node(Integer value) { this.value = value; } public static void main(String[] args) {
2021-11-06 17:18:45 100
原创 数据结构1-5(迭代器,泛型)
迭代器while遍历列表:Iterator<类型名> 迭代器名 = 列表名.iterator();while (迭代器名.hasNext()) {//判断是否有下一个元素 System.out.println(迭代器名.next());//获取下一个元素}迭代器for遍历列表:for (Iterator<类型名> 迭代器名 = 列表名.iterator();迭代器名.hasNext();) { System.out.println(迭代器名.next());//获取下
2021-11-05 09:47:48 46
原创 数据结构1-4(双链表)
public interface Mydoublelist { void add(Object element); void delete(Object element); void delete(int index); void updata(int index,Object newElement); boolean contain(Object target); Object at(int index); int Indexof(Object el
2021-11-04 21:44:23 46
原创 数据结构1-3(单链表)
实现单链表:1.首先列出单链表的功能(增、删、改、查) 使用接口来定义功能。2.实现接口,实现单链表的功能public interface MySingleList { void add(Object element); void delete(Object element); void delete(int index); void updata(int index,Object newElement); boolean contain(Object targ
2021-11-04 20:20:42 48
原创 数据结构1-2(基于数组实现线性表)
实现底层基于数组的一个线性表:1.首先列出线性表的功能(增、删、改、查) 使用接口来定义功能。2.实现接口,实现线性表的功能public interface Mylist1_2 { void add(Object element); void delete(Object element); void delete(int index); void updata(int index,Object newElement); boolean contain(Obje
2021-11-04 20:15:23 166
原创 数据结构1-1(面向对象,数据结构概述)
2022蓝桥杯JavaB组考试范围:计算机算法:枚举、排序(10种)、搜索、计数、贪心、动态规划、图论、数论、字符串算法等。数据结构:数组(很重要)、对象/结构、字符串、队列、栈、树、图、堆、平衡树/线段树、复杂 数据结构*、嵌套数据结构*等。算法:位运算的奇巧淫技:查找与排序:多维数组与矩阵:字符串专题:基本数学问题:递归,DFS,剪枝,回溯:贪心策略与动态规划:数据结构(线,树,图):线性结构:列表,链表,栈,队列,哈希表,哈希映射:树结构:图论:面向对象的概述:
2021-11-03 14:07:02 139
原创 组管理和权限管理
一、基本介绍在Linux中的每一个用户必须属于一个组,不能独立于组外。在Linux中每个文件有所有者、所在组、其他组的概念。二、文件/目录 所有者所在组一般为文件的创建者,谁创建了文件,就自然的成为该文件的所有者,文件的所在组就是该用户的所在组查看文件的所有者案例:ls -lh修改文件的所有者(Change Owner)语法:chown 用户名 文件名案例:使用root创建一个apple.txt,然后将所有者修改为tomtouch apple.txtchown tom appl
2021-11-02 20:15:40 137
原创 神经网络简单函数及代码实现
import numpy as npfrom sklearn.datasets import load_irisfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import accuracy_scorefrom sklearn.preprocessing import OneHotEncoderdef norm(x): x_max = np.max(x, axis=0) x_min
2021-10-30 14:19:25 293
原创 random.randint()用法
函数功能:random.randint(参数1,参数2)参数1、参数2必须是整数函数返回参数1和参数2之间的任意整数import randomresult = random.randint(1,10)print("result: ",result)输出:result: 9
2021-10-24 16:52:31 399
原创 Linux忘记root密码怎么办
1.首先,启动系统,进入开机界面,在界面中按“e”进入编辑界面。如图2.进入编辑界面,使用键盘上的上下键把光标往下移动,找到以““Linux16”开头内容所在的行数”3.在行的最后面输入:init=/bin/sh。如图4.输入完成后,直接按快捷键:Ctrl+x 进入单用户模式5.在光标闪烁的位置中输入:mount -o remount,rw /(注意空格),完成后按键盘的回车键(Enter)。如图6.在新的一行最后面输入:passwd7.输入新密码8.再次输入新密码9.
2021-10-17 15:27:08 300
原创 基于HMM马尔可夫+维特比算法的中文分词
1.中文分词任务:正向最大匹配:从左到右将待切分句子的m个字符作为匹配字符,m为初始词典中最长词条的长度。将字符与字典中元素进行匹配:若匹配成功,则将这个字符作为一个词切分出来。若匹配不成功,则将这个字符的最后一个字去掉,再进行匹配,重复上述过程,知道切分完整个文本为止。逆向最大匹配:从右至左将待切分句子的m个字符作为匹配字符,m为初始词典中最长词条的长度。将字符与字典中元素进行匹配:若匹配成功,则将这个字符作为一个词切分出来。若匹配不成功,则将这个字符的最后一个字去掉,再进行
2021-10-16 17:22:34 1161
原创 os.walk()与os.listdir()的理解(秒懂)
os.walk():os.walk()用类似于深度遍历的方式遍历文件夹中的子文件夹以及文件。在代码的时候 如果涉及到 要遍历文件夹里的文件可以采用os.listdir ()以及os.walk():两者的区别就在于os.listdir () 会返回 该路径里包含的一层文件和文件夹举例子 如果 a文件夹里有 b c d三个文件夹 还有 e f 两个文件那么listdir就会返回 bcdef bcd文件夹里面有什么不会得知。**os.walk()**会得到 该文件下所有的文件夹 以及里面的文件无
2021-10-16 14:31:25 1164
原创 python中pop() 和 append() 的用法
pop()函数:描述pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。默认删除列表中最后一个与append()类似。例子:aList = [123, 'lining', 'anta', 'pike'];print(aList.pop())print(aList.pop(2))结果:pikeantaappend函数:描述append()函数用于在列表末尾添加新的对象。alist1 = ['C++', 'Java', 'Python']alis
2021-10-16 14:08:39 791
原创 split()函数的使用
函数:split()Python中有split()和os.path.split()两个函数,具体作用如下:split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)os.path.split():按照路径将文件名和路径分割开1、split()函数语法:str.split(str="",num=string.count(str))[n]切分后放在一个列表中。参数说明:str: 表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整
2021-10-06 14:26:19 261
原创 与门,或门,与非门,异或门的python实现
import numpy as npx = np.array([0,1])def date(): w = np.array([1,0]) b = 0.1 x = [1,1] # s = np.matmul(w,x)+b s = np.sum(w * x) + b print(int(round(s,0)))def get_and(x1, x2): x = np.array([x1, x2]) y = np.array([0.5, 0.
2021-10-04 17:26:26 1897
原创 Svm支持向量机代码实现
import numpy as np#我们获取x和y,分别为x为特征矩阵(3, 10),有3个数据,每个数据10个特征,y为类别向量(3,),有三个数据,每个数据对应一个类别,#数据的特征和类别在x和y上的索引是对应的cat = np.array([0.5,2.4,3.2,2.4,5.5,3.5,2.2,1.4,2.0,4.0])dog = np.array([3.4,1.0,0.1,1.8,6.4,1.2,2.0,1.1,5.2,3.4])frog = np.array([3.3,2.0,
2021-10-04 16:00:38 238
原创 Pandas
pd.DataFrame:DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表。import pandas as pdimport numpy as npdf1 = pd.DataFrame(np.random.randn(3, 3), index=list('abc'), columns=list('ABC'))print(df1)# A B C# a -0.612978 0.237191
2021-10-03 16:12:07 64
原创 python学习关于title()函数
title函数:python中字符串函数,返回’标题化‘的字符串,就是单词的开头为大写,其余为小写。语法:x = 'the sun rises from the horizontal line 'print(x.title())The Sun Rises From The Horizontal Line
2021-10-03 15:56:45 1185
原创 k_means聚类算法简单代码实现
import numpy as npfrom sklearn import datasets#1.导入数据,需要其所有的特征数据,target数据为计算聚类准确度def load_iris_data(): #导入数据集,结构为[data:特征,target:类别,target_name:类别对应名称] #数据量为150个数据点,每个数据点对应4维特征,和一个类别,类别为0,1,2 iris = datasets.load_iris() #将data特征传入x
2021-10-03 15:00:53 398
原创 KNN最邻近分类算法简单代码实现
import numpy as npimport matplotlib.pyplot as plt # 画图用import math# 这是训练集train_x = [[3.3935, 2.3312], [3.1100, 1.7815], [1.3438, 3.3686], [3.5822, 4.6791], [2.2803, 2.8669], [7.4234, 4.6965],
2021-10-02 15:07:26 98
原创 无监督学习的基础算法
无监督学习k_means:简述:K-means算法,也称为K-平均或者K-均值,一般作为掌握聚类算法的第一个算法。这里的K为常数,需事先设定,通俗地说该算法是将没有标注的 M 个样本通过迭代的方式聚集成K个簇。在对样本进行聚集的过程往往是以样本之间的距离作为指标来划分。算法步骤:选取K个点做为初始聚集的簇心(也可选择非样本点);分别计算每个样本点到 K个簇核心的距离(这里的距离一般取欧氏距离或余弦距离),找到离该点最近的簇核心,将它归属到对应的簇;所有点都归属到簇之后, M个点就分
2021-10-01 16:41:13 312
原创 监督学习的基础算法
监督学习首先说说回归与分类的区别:1.回归问题的应用场景(预测的结果是连续的,例如预测明天的温度,23,24,25度)回归问题通常是用来预测一个值2.分类问题的应用场景(预测的结果是离散的,例如预测明天天气-阴,晴,雨)分类问题是用于将事物打上一个标签,通常结果为离散值。线性回归:线性回归是一种x和y之间的关系为线性关系的回归分析。y=a1x1+a2x2+by=a1x1+a2x2+b,这个叫线性关系。如果这里出现了x2x2,log(x)log(x), sin(x)sin(x)之类的,那就不是
2021-10-01 16:15:56 227
原创 机器学习分类
机器学习通常分为四类监督学习无监督学习半监督学习强化学习1.监督学习:监督学习是从标记的训练数据来推断一个功能的机器学习任务。当我们已经拥有–些数据及数据对应的类标时,就可以通过这些数据训练出一个模型,再利用这个模型去预测新数据的类标,这种情况称为有监督学习。在回归问题中,我们预测的结果是连续值;而在分类问题中,我们预测的结果是离散值。常见的有监督学习算法包括线性回归、逻辑回归、K-近邻(knn)、朴素贝叶斯、决策树、随机森林、支持向量机(svm)等。2.无监督学习:在无监督学习中是
2021-10-01 14:53:01 1460
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人