学习笔记

贪心算法和分治算法及经典例子

所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。 贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关。  所以对所采用的贪心策略一定要仔细分析其是否满足无后效性。 建立数学模型来描述问题。    2. 把求解的问题分成若干个子问题。    3. 对每一子问题求解,得到子问题的局部最优解。 ...

VueRouter爬坑第二篇-动态路由

 VueRouter系列的文章示例编写时,项目是使用vue-cli脚手架搭建。项目搭建的步骤和项目目录专门写了一篇文章:点击这里进行传送...

1. goroutine源码分析

1.1 初始化   go程序的启动流程分为四步 call osinit, 这里就是设置了全局变量ncpu = cpu核心数量 call schedinit make & queue new G (runtime.newproc, go func()也是调用这个函数来创建goroutine) call runtime·mstart   其中,schedinit 就是调度器的初始化,除了schedinit 中对内存分配,垃圾回收等操作,针对调度器的初始化大致就是初始化自身,设置最大的maxmcount, 确定p的数量并初始化这些操作。 ...

【Elasticsearch 7 探索之路】(四)Analyzer 分析

 上一篇,什么是倒排索引以及原理是什么。本篇讲解 Analyzer,了解 Analyzer 是什么 ,分词器是什么,以及 Elasticsearch 内置的分词器,最后再讲解中文分词是怎么做的。...

tensorflow学习笔记——模型持久化的原理,将CKPT转为pb文件,使用pb模型预测

 由题目就可以看出,本节内容分为三部分,第一部分就是如何将训练好的模型持久化,并学习模型持久化的原理,第二部分就是如何将CKPT转化为pb文件,第三部分就是如何使用pb模型进行预测。 一,模型持久化   为了让训练得到的模型保存下来方便下次直接调用,我们需要将训练得到的神经网络模型持久化。下面学习通过TensorFlow程序来持久化一个训练好的模型,并从持久化之后的模型文件中还原被保存的模型,然后学习TensorFlow持久化的工作原理和持久化之后文件中的数据格式。 1,持久化代码实现   TensorFlow提供了一个非常简单的API来保存和还原一个神经网络模型。这个API就是 tf.train.Saver 类。使用 tf.train.saver() 保存模型时会产生多个文件,会把计算图的结构和图上参数取值分成了不同的文件存储。这种方式是在TensorFlow中是最常用的保存方式。 ...

Rust 入门 (三)_上

这部分我们学习 rust 语言的 变量、数据类型、函数、注释、流程控制 这五个方面的内容。本文我们介绍前两个内容,下一篇文章介绍后三个内容。 变量 默认情况下,rust 语言中声明的变量是不可变的,比如如下代码: fn main() { let x = 5; println!("x 的值是: {}", x); x = 6; println!("x 的值是: {}", x); } 我们先来跑一下这段代码: cargo run ...

如何运用DDD - 值对象

目录 DDD实战与进阶 - 值对象 概述 何为值对象 怎么运用值对象 来看一个例子 值对象的持久化 总结 DDD实战与进阶 - 值对象 概述 作为领域驱动设计战术模式中最为核心的一个部分-值对象。一直是被大多数愿意尝试或者正在使用DDD的开发者提及最多的概念之一。但是在学习过程中,大家会因为受到传统开发模式的影响,往往很难去运用值对象这一概念,以及在对值对象进行持久化时感到非常的迷惑。本篇文章会从值对象的概念出发,解释什么是值对象以及怎么运用值对象,并且给出相应的代码片段(本教程的代码片段都使用的是C#,后期的实战项目也是基于 DotNet Core 平台)。 ...

Spring中常见的设计模式——单例模式

 一、单例模式的应用场景  单例模式(singleton Pattern)是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。J2EE中的ServletContext,ServletContextConfig等;Spring中的ApplicationContext、数据库连接池等。...

动手造轮子:实现一个简单的依赖注入(二) --- 服务注册优化

ntro# 之前实现的那版依赖注入框架基本可用,但是感觉还是不够灵活,而且注册服务和解析服务在同一个地方感觉有点别扭,有点职责分离不够。于是借鉴 Autofac 的做法,增加了一个 ServiceContainerBuilder 来负责注册服务,ServiceContainer负责解析服务,并且增加了一个 ServiceContainerModule 可以支持像 Autofac 中 Module/RegisterAssemblyModules 一样注册服务 实现代码# ServiceContainerBuilder# ...

基于loghub的消息消费延迟监控

  我们可以把loghub当作一个消息中间件来使用。如果能知道当前的消费进度,自然好了,否则消费情况一无所知,总是有点慌!  loghub消费分两种情况,一是普通消费,二是消费组消费;...

《手把手教你》系列练习篇之5-python+ selenium自动化测试(详细教程)

1. 简介   今天我们继续前边的练习,学习和练习一下:如何使用webdriver方法获取操作复选框-CheckBox、测试不同的分辨率、如何断言title、如何获取某一个元素的text属性值等等,这些小练习,来巩固基础。 2.操作复选框-Checkbox 本小节介绍Selenium中,如何操作复选框-Checkbox,最终的方法还是click()。 本来想还是继续采用for语句来把所有的复选框勾选一遍,例如这样的场景:注册一个网站勾选身份或者职业的时候,由于没有找到合适的demo网站。这里还是以百度举例,登录时,勾选下次自动登录: ...

Linux中shell基础、重定向、管道符、环境变量

1、什么是shell  Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器)。它接收用户输入的命令并把它送入内核去执行。起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。...

【并发编程】实现多线程的几种方式

本博客系列是学习并发编程过程中的记录总结。由于文章比较多,写的时间也比较散,所以我整理了个目录贴(传送门),方便查阅。 并发编程系列博客传送门 在Java中有多种方式可以实现多线程编程(记得这是一道常问的面试题,特别是在应届生找工作的时候被问的频率就更高了)。 继承Thread类并重写run方法; 实现Runnable接口,并将这个类的实例当做一个target构造Thread类 实现Callable接口; 继承Thread类# 通过继承Thread类来实现多线程编程很容易。下面代码中MyThread类继承了Thread类,并重写了run方法。 ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程