自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 机器学习实战第四章课后练习答案

本文为机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)该书第四章:训练模型的课后习题答案。

2022-09-27 09:55:42 1701 1

原创 机器学习实战——训练模型

本文为机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)该书第四章:训练模型的读书笔记

2022-08-15 16:56:13 3966

原创 机器学习实战第三章课后练习答案

本文为机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)该书第三章:分类的课后习题答案。

2022-07-31 21:10:18 1586

原创 机器学习实战——分类

本文为机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)该书第三章:分类的读书笔记

2022-07-25 20:29:06 1574

原创 机器学习实战——端到端的机器学习项目

本文为机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)该书第二章:端到端的机器学习项目的读书笔记

2022-07-04 22:11:46 963

原创 机器学习实战——机器学习概览

本文为机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)该书第一章:机器学习概览的读书笔记

2022-06-27 17:33:04 549

原创 Pandas的简单使用

import pandas as pd基本创建# Series的创建s = pd.Series([1,2,3,4,5,6]) # 生成带索引的一维序列print(s)# Series可以使用index设置索引,可以重复s = pd.Series(['a','b','c','d','e'],index=[100,200,100,400,500])print(s)# Series 可以用字典实例化d = {'b': 1, 'a': 0, 'c': 2}s = pd.Series(d).

2022-03-24 17:04:39 4568 1

原创 Numpy的简单使用

import numpy as np数组创建# 将list或tuple转换为numpy矩阵# 可以添加dtype属性指定元素的类型matrix = np.array([[1,2,3], [4,5,6], [7,8,9]],dtype=float)print(matrix) # 输出矩阵print(matrix.shape) # 输出矩阵的规模(行,列)matrix = np.zeros((3,4),dty.

2022-03-24 17:03:30 1087

原创 Leetcode刷题之位运算(Java)

位运算是算法题中比较特殊的一种类型,它们利用二进制位运算的特性进行一些奇妙的优化和计算。常用的位运算符号包括:^ 按位异或& 按位与| 按位或~ 取反<< 左移位>> 右移位力扣例题461. 汉明距离分析:异或运算保留不同的二进制的位,&1取出最后一位,>>向右移位。题解:class Solution { public int hammingDistance(int x, int y) { //将两数进行

2022-02-25 11:12:31 538

原创 Leetcode刷题之动态规划(Java)

算法解释可以用局部最优解来推到全局最优解,即动态规划。动态规划在查找有很多重叠子区间问题的最优解时最有效。它将问题重新组合成子问题,为避免多次解决这些子问题,结果都逐渐被计算并保存,从简单的问题直到整个问题都被解决。因此,动态规划保存递归时的结果,因而不会在解决同样的问题时花费时间。要使用动态规划需要满足两个条件:1. 最优子结构,即局部最优解能决定全局最优解;2. 当前状态是前面状态的完美总结,即现状态不会影响前面的状态。解决动态规划问题的关键是找到状态转移方程,这样我们可以通过计算和存储子问题的解

2022-02-24 20:28:57 1144

原创 LeetCode刷题之搜索(Java)

一、深度优先搜索基本模型:基于栈的递归void dfs(step){ 判断边界 尝试每一种可能 for(int i=0;i<n;++i) { 继续下一步 dfs(step+1); } 返回}DFS力扣例题695.岛屿的最大面积分析:对是陆地的位置向四个方向进行深度优先搜索,如果下一个位置仍然是陆地,则加上由新陆地向四个方向搜索的值。遍历过的陆地应该设置为0,以避免重复被计入。题解:class Solution { public static i

2022-02-08 11:40:08 878

原创 Leetcode刷题之二分查找(Java)

二分查找也常被称为二分法或者折半查找,每次查找通过将待查找区间分成两部分并只取一部分继续查找。二分查找时区间的左右端取开区间还是闭区间在绝大部分时候都考研,但是熟练使用一种写法更好:如左闭右开或者左闭右闭。力扣例题69.Sqrt(x)分析:本题计算算数平方根,因此得数≥0,可以对[0,x]区间使用二分法找到对应值即可。因为小数部分舍去,即向下取整,在结束循环应该取右边的较小的一个边界,由于此时right<left,因此取right。题解:class Solution { publi

2022-01-17 19:38:07 362

原创 Android开发学习之Retrofit框架

Retrofit是一款类型安全的网络框架,基于HTTP协议,服务于Android和java语言,在使用时其实就充当了一个适配器的角色,主要是将一个 Java 接口翻译成一个 HTTP 请求对象,然后用内部封装的 OkHttp 去发送这个请求。github地址:https://github.com/square/retrofit引入依赖:implementation 'com.squareup.retrofit2:retrofit:2.9.0'一、使用方法根据网络Http接口创建Java的接口,

2021-10-09 19:08:59 188

原创 Android开发学习之OkHttp框架

OkHttp是处理网络请求的开源项目,是目前Android使用最广泛的网络框架。github地址:https://github.com/square/okhttp需引入依赖implementation("com.squareup.okhttp3:okhttp:4.9.1")一、同步GET请求完成同步网络请求需要在子线程中完成声明Request对象:传入url地址,调用build()返回对象声明Call对象:调用OkhttpClient的newCall方法,传入request声明Respo

2021-09-24 20:33:36 2454

原创 leetcode刷题之双指针(C++&Java)

(学习参考书:LeetCode101)双指针双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。也可以延申多个数组的多个指针。若两个指针指向同一数组,遍历方向相同且不会相交,则称为滑动窗口,常用于区间搜索。若两个指针指向同一个数组,但是遍历方向相反,则可用于进行搜索,被搜索的数组往往是排好序的。力扣例题167.两数之和2-输入有序数组分析:因为数组已经排好序,我们可以采用方向相反的双指针来寻找这两个数字,一个初始执行最小的元素,即数组最左边,向右遍历;一个初始执行最大的元素,即

2021-09-14 20:28:14 219

原创 Android开发学习之Scroll分析

(学习参考书:Android群英传)一、滑动效果的产生滑动一个View本质上就是一移动一个View,改变当前其当前所处的位置。因要实现View的滑动,就必须监听用户的触摸事件,并根据事件传入的坐标,动态且不断的改变View的坐标,从而实现View跟随用户触摸的滑动而滑动。Android中的窗口坐标体系和触控事件MotionEvent二、Android坐标系在Android中,将屏幕的左上角的顶点作为Android坐标系的原点,从该点向左为X轴正方向,向下为Y轴正方向。系统提供了getLocation

2021-09-08 19:47:47 221

原创 Android开发学习之控件架构与自定义控件

(学习参考书:Android群英传)一、Android控件架构Android中的控件大致被分为两大类,即ViewGroup控件和View控件。ViewGroup控件作为父控件可以包含多个View控件,并对其进行管理。通过ViewGroup整个界面上的控件形成了一个树形结构即控件树,通常在activity中使用findViewById()就是在控件树中以深度优先遍历来查找对应元素的。每个activity都包含一个Window对象,在Android中Window对象通常用PhoneWindow来实现。P

2021-09-04 11:05:42 201

原创 leetcode刷题之贪心算法(C++&Java)

(学习参考书:LeetCode101)贪心算法贪心算法采用贪心的策略,保证每次操作都是局部最优的,从而使最后得到是全局最优的。解题步骤:将问题分解为若干个子问题,寻找合适的贪心策略求解每一个子集的最优解将局部最优解迭代成全局最优解力扣例题455.分发饼干分析:因为饥饿度最小的孩子最容易吃饱,所以优先考虑这个孩子。为了使剩下的饼干尽可能的满足饥饿度更大的孩子,所以应该把大于等于这个孩子饥饿度的且最小的饼干给这个孩子。然后采取同样的策略,直到没有满足的饼干为止。题解:class So

2021-08-31 21:09:19 259

原创 Android开发学习之实用技巧

一、全局获取ContextAndroid提供了一个Application类,每当程序启动的时候,系统会自动将这个类进行初始化。可以定制一个自己的Application类,便于管理程序内的一些全局状态信息,如Context。新建类继承Application,设置私有静态全局变量context重写其onCreate()方法,在其中用getApplicationContext()为context赋值提供一个getContext()方法,将刚才获取的Context进行返回在AndroidManifest

2021-08-10 19:13:04 170

原创 Android开发学习之Material Design

(参考书:第一行代码第2版)

2021-07-30 10:02:01 276

原创 Android开发学习之位置服务

(学习参考书:第一行代码第2版)在开始之前,需要到提供LBS服务的API开发平台申请注册和申请API key。百度、高德地图均可,本文采用百度的API。一、配置LBS SDK选择所需功能下载jar文件解压后将下载文件夹中libs目录下的jar文件复制到项目的app/libs文件夹下在app/src/main目录下创建jniLibs目录,放入下载文件夹中除了libs的其他文件(即so文件)点击Sync按钮同步,查看app/build.gradle是否存在 implementation files

2021-07-24 11:32:51 289

原创 Android第一行代码第二版过时操作解决方法

一、

2021-07-24 11:22:13 937 7

原创 Android开发学习之探究服务

(学习参考书:第一行代码第2版)服务是Android中实现程序后台运行的解决方案,适合去执行那些不需要和用户交互而且还需要长时间运行的任务。服务的运行不依赖任何用户界面,及时程序被切换到后台,或者用户打开了另外一个应用程序,服务仍然能够保持正常运行。服务不是运行在一个独立的线程当中的,而是依赖于创建服务时所在的应用程序进程。当某个应用程序进程被杀掉时,依赖于该进程的服务也会停止运行。服务也不会自动开启线程,所有的代码默认运行在主线程当中。需要在服务的内部创建子线程,并在这执行具体的任务。一、Andr

2021-06-02 21:35:13 1133 5

原创 列车厢调度(C语言)

题目如下:1 ====== <–移动方向/3 =====\2 ====== -->移动方向有三条平行的列车轨道(1、2、3)以及1-3和2-3两段连接轨道。现有一列车厢停在1号轨道上,请利用两条连接轨道以及3号轨道,将车厢按照要求的顺序转移到2号轨道。规则是:每次转移1节车厢;处在1号轨道的车厢要么经过1-3连接道进入3号轨道(该操作记为"1->3"),要么经过两条连接轨道直接进入2号轨道(该操作记为"1->2");一旦车厢进入2号轨道,就不可以再

2021-05-30 17:30:30 1954 1

原创 Android开发学习之网络技术

(学习参考书:第一行代码第2版)一、WebView的用法借助WebView控件,我们可以在自己的应用程序中嵌入一个浏览器,从而展示各种各样的网页。使用方法如下:在布局文件中添加WebView,在活动中获取WebView的实例调用getSetting()方法设置浏览器的属性。如setJavaScriptEnabled()方法来让WebView支持js脚本调用WebView的setWebViewClient()方法,并传入一个WebViewClient实例。作用为从一个网页跳转到另一个网页时,希望在

2021-05-23 21:34:49 675 6

原创 Android开发学习之通知

(学习参考书:第一行代码第2版)一、通知及其应用通知(Notification)是Android系统中的特色功能。当程序希望向用户发出提示信息,而程序又不在前台运行时,就可以借助通知实现。通知的用法较为灵活,既可以在活动中创建也可以在广播接收器、服务里创建。相比于广播接收器和服务,活动中创建的情况较少。无论在哪里创建,整体步骤相同:首先需要一个NotificationManager来对通知进行管理,可以调用Context的getSystemService()方法获取。该方法可以通过Android系统

2021-05-14 19:51:40 361

原创 Android开发学习之内容提供器

(学习参考书:第一行代码第2版)在实际开发中,会遇到将程序中的数据共享给其他程序作为进行二次开发的基础性数据。内容提供其主要用于在不同程序之间实现数据共享的功能,它提供了一套完整的机制,相比于文件和SharedPreferences存储,内容提供器在实现跨程序数据共享时更加安全可靠。使用内容提供器是Android实现跨程序共享数据的标准方式。一、Android权限机制Android将所有权限分为两类:普通权限、危险权限。普通权限是指不会直接威胁到用户的安全和隐私的权限,系统会自动进行授权。危险权限是

2021-05-05 21:05:05 221 1

原创 Android学习笔记之持久化技术

(学习参考书:第一行代码第2版)一、持久化技术简介数据持久化就是指将那些内存中的瞬时数据保存到存储设备中,持久化技术提供了一种机制可以让数据在瞬时状态和持久状态之间进行转换。Android系统主要提供了三种方式用于简单地实现数据持久化功能,即文件存储,SharedPreference存储以及数据库存储。二、文件存储文件存储时Android中最基本的一种数据存储方式,它不对存储的内容进行任何格式化的处理,所有数据原封不动的保存到文件之中。因而它适合存储一些较为简单的文本数据或二进制数据。(1)存储

2021-04-28 17:46:42 188

原创 Android学习笔记之广播机制

(学习参考书:第一行代码第2版)一、广播机制简介Android中的广播可以分为两种类型:标准广播和有序广播;标准广播:是一种完全异步执行的广播,在广播发出后,所有的广播接收器都会在同一时刻接收到这条广播。这种广播效率高,但是它无法被切断。有序广播:是一种同步执行的广播,在广播发出后,同一时刻只有一个广播接收器能接收消息,当这个接收器的逻辑执行完毕后,广播才会继续传递。此时的广播接收器有先后顺序,优先级高的广播接收器先收到广播消息,且前面的广播接收器还可以截断正在传递的广播。二、接收系统广播(1)

2021-04-14 21:01:58 233 1

原创 Android学习笔记之探究碎片

(学习参考书:第一行代码第2版)一、碎片及其使用方式碎片(fragment)是一种可以嵌入在活动中的UI片段,它能让程序更加合理和充分利用大屏幕的空间。碎片类似于活动,同样能包含布局,有自己的生命周期。(1)碎片的简单用法新建layout布局文件新建绑定对应布局文件的类,该类继承Fragment。在该类中重写onCreateView方法。在要添加该碎片的活动中添加fragment控件,使用属性android:name显式指明要添加的碎片类名,要将包名也加上(2)动态添加碎片碎片的真正强

2021-04-07 20:52:08 1859 3

原创 Android学习笔记之UI开发

(学习参考书:第一行代码第2版)一、所有控件适用的属性android:id 给当前控制定义一个唯一的标识符android:text 控件上显示的内容android:layout_width 所有Android控件的共有属性,指定控件的宽度android:layout_height 所有Android控件的共有属性,指定控件的高度宽度和高度的可选值有两种:match_parent 当前的控件的大小与父布局的大小相同(铺满)warp_content 当前控件大小刚好包括自己所含的内容(自适应)

2021-04-01 18:49:55 2336 4

原创 Android学习笔记之探究活动

(学习参考书:第一行代码第2版)一、活动及其基本用法活动(Activity)是一种包含用户界面的组件,主要用于和用户进行交互。一个应用程序中可以包含零个或多个活动。项目中的任何活动都应该重写Activity的onCreate()方法。默认的该方法的实现是super.onCreate(savedInstanceState),即调用父类的该方法。AS创建活动:com.example.activitytest包→New→Activity→Empty ActivityAS创建和加载布局:res/layou

2021-03-20 10:18:04 180 2

原创 Java程序开发学习之网络编程

(学习参考书:Java2实用教程第5版)一、URL类URL类是java.net包中的一个重要的类。使用URL创建对象的应用程序称为客户端程序。一个URL对象封装着一个具体资源的引用。客户利用URL对象访问URL中的资源。一个URL对象包含最基本的三部分信息:协议、地址和资源。协议是URL对象所在的JVM支持的协议;地址是必须能连接的有效的IP或域名;资源可以是主机上的任何一个文件。(1)URL的构造方法public URL(String spec) throws MalformedURLExcep

2021-02-27 19:05:19 236

原创 Java程序开发之泛型与集合框架

(学习参考书:Java2实用教程第5版)一、泛型泛型的主要目的是可以建立具有类型安全的集合框架,如链表、散列映射等数据结构。实现常见数据结构的类通称为Java集合框架。(1)泛型类声明可以使用“ class 名称<泛型列表> ”声明一个和普通的类有所区别的类,这样的声明的类称作泛型类。泛型列表给出的泛型(对象或接口)可以作为类的成员变量的类型、方法的类型以及局部变量的类型。(2)使用泛型类声明对象和普通的类相比,泛型类声明和创建对象时,类名后多了一对“<>”,而且必须要使

2021-02-24 23:28:15 318

原创 Java程序开发学习之多线程

(学习参考书:Java2实用教程第5版)一、进程与线程程序时一段静态的代码,是应用软件执行的蓝本。进程是程序的一次动态执行过程,对应了从代码加载、执行至执行完毕的完整过程。现代操作系统可以同时管理计算机的多个进程。线程不是进程,但其行为很像进程。线程是比进程更小的单位,一个进程在执行过程中,可以产生多个线程,每个线程也有它自身的产生、存在和消亡的过程。通俗的讲,线程是进程中的“小进程”。二、Java中的线程(1)Java的多线程机制Java语言的一大特点就是内置对多线程的支持。多线程是指一个应用

2021-02-22 21:36:57 225

原创 Java程序开发学习之输入输出流

(学习参考书:Java2实用教程第5版)程序运行期间,使用输入流从外部的存储媒介或其他程序中读入需要的数据,输入流的指向称为它的源;使用输出流将处理的结果写入永久的存储媒介或传送给其他的应用程序,输出流的指向称为它的目的地。源和目的地可以是磁盘文件、键盘、内存或显示器窗口。一、File类File类对象用来获取文件本身的一些信息,如文件所在目录、文件长度或文件读写权限。不包括文件的读写操作。(1)创建一个File对象的构造方法File(String filename);File(String di

2021-02-22 21:26:23 878

原创 Java程序开发学习之常用实用类

(学习参考书:Java2实用教程第5版)一、String类String类在java.lang包内,默认被引入,可以直接使用。Java将String类定义为final类,用户不能继承该类。(1)String对象String对象即字符串对象,两个相同字符串对象变量的引用不一定相同,不能用==描述两个字符串的关系(始终为false)。两个相同字符串常量的引用相同。(2)字符串的并置String对象可以用+号进行并置运算,即首尾相接得到一个新的String对象。(3)String类常用方法publi

2021-02-14 19:26:23 175 1

原创 Java程序开发学习之JDBC与MySQL数据库

(学习参考书:Java2实用教程第5版)一、JDBC连接数据库的操作编写时可以封装在一个类里面简化代码。(1)加载JDBC-MySQL数据库驱动try { Class.forName("com.mysql.cj.jdbc.Driver");}catch (Exception e){ }(2)连接数据库Connection con = null;//声明要连接数据库的对象comString uri = "jdbc:mysql://localhost:3306/数据库名?useSSL

2021-02-06 17:26:38 1285 2

原创 Java程序开发学习之组件及事件处理

(学习参考书:Java2实用教程第5版)一、GUI编程容器类(Container)和组件类(Component)。javax.swing包中JComponent类是java.awt包中Container类的一个直接子类,java.awt包中Component类的一个间接子类。GUI编程的基本知识点:Java把Component类的子类或间接子类创建的对象称为一个组件Java把Container的子类或间接子类创建的对象称为一个容器可以向容器添加组件。Container类提供了一个public方法

2021-02-03 16:46:49 2558

原创 Java程序开发学习之内部类与异常类

(学习参考书:Java2实用教程第5版)一、内部类Java支持在一个类中定义另一个类,这样的类称为内部类,而包含在内部的类称为内部类的外嵌类。内部类与外嵌类又如下的关系:外嵌类的成员变量在内部类中仍然有效,内部类的中的方法也可以调用外嵌类的方法内部类的类体中不可以声明类变量和类方法(static)。外嵌类可以用内部类声明对象,作为外嵌类的成员内部类仅供它的外嵌类使用,其他类不可以用某个类的内部类声明对象Java编译器生成的内部类的字节码文件与通常类不同(类名.class),而是外嵌类名$内部

2021-01-22 19:47:59 214

空空如也

空空如也

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

TA关注的人

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