Go题解:
func findNumberIn2DArray(matrix [][]int, target int) bool {
//边界条件判断
if len(matrix) == 0 {
return false
}
//二维数据的大小:长、宽
n := len(matrix)
m := len(matrix[0])
//设置初始遍历元素的位置,数组的右上角matrix[n-1][0]
i, j := n-1, 0
//从右上角开始遍历元素
for i >= 0 && j < m {
if matrix[i][j] == target {
return true
}
if matrix[i][j] > target {
i--
} else if matrix[i][j] < target {
j++
}
}
return false
}
//直接排序求解
class Solution {
public int minArray(int[] numbers) {
Arrays.sort(numbers);
return numbers[0];
}
}
题目描述:找出数组当中重复的数字
解决思路:用集合保存出现过的数字,利用集合当中的数据是非重复的判断重复出现的数字。
class Solution {
public int findRepeatNumber(int[] nums) {
Set<Integer> set = new HashSet<>();
int repeat = -1;
for (int num : nums) {
if (!set.add(num)) {
repeat = num;
break;
}
}
return repeat;
}
}
问题描述:用两个栈模拟实现一个队列
解题思路:用 一个栈作为添加数据使用,另一个栈用作删除数据、模拟出队列使用
class CQueue {
private Stack<Integer> addStack;
private Stack<Integer> delStack;
public CQueue() {
addStack = new Stack<>();
delStack = new Stack<>();
}
public void appendTail(int value) {
addStack.push(value);
}
public int deleteHead() {
//两个栈都为空,则返回-1
if (addStack.isEmpty() && delStack.isEmpty()) {
return -1;
}
if (!delStack.isEmpty()) {
return delStack.pop();
}
while (!addStack.isEmpty()) {
int val = addStack.pop();
delStack.push(val);
}
return delStack.pop();
}
}
问题描述:求斐波那契(Fibonacci)数列的第 n 项。
题解:利用动态规划的算法进行解决。关键在于求出状态转移方程
/**
* 理解动态规划的思想
* 斐波那契数列: 0,1,1,2,3,5
* 下标: 0,1,2,3,4,5
* ----------------------------------------
* 个例演算:n = 5
* 序号 a b sum
* 0 0 1 1
* 1 1 1 2
* 2 1 2 3
* 3 2 3 5
* 4 3 5 7
* 5 5 7 12
* 所以最终经过5次运算返回结果 a 的值
*/
class Solution {
public int fib(int n) {
int a = 0, b = 1, sum;
for (int i = 0; i < n; i++) {
sum = (a + b) % (1000000007);
a = b;
b = sum;
}
return a;
}
}
/**
* 斐波那契数列
* 剑指 Offer 10- II. 青蛙跳台阶问题
* 动态规划的思想:由动态转移方程入手
* 1: 1
* 2: 11 2
* 3: 111 12 21
*/
class Solution {
public int numWays(int n) {
int a = 1, b = 1, sum;
for (int i = 0; i < n; i++) {
sum = (a + b) % 1000000007;
a = b;
b = sum;
}
return a;
}
}
以下几幅图是最近的一段时间对自己模块LCM的一些总结,目前只是完成了一部分,而且描述的不是特别到位,后期会不断更新和修改的。第一幅是LCM的总体移植框架和组件图。介绍了LCM驱动的分部和调试屏的步骤和要点。分lk和kernel两个部分,具体哪些.c,如何添加一块新屏,大体的步骤和方法。第二幅图是屏的初始化流程图,分为lk和kernel两部分。Lk部分如下所示:系统起来的时候会调用 boo...
wordpress排版插件Are you looking for a WordPress typography plugin to improve your design? Typography plays an important role in web design. It improves readability and the time users spend on your websit...
目的: 在广度优先算法上进行进化。一致代价搜索算法每次扩展的是当前路径消耗g(n)最小的节点n。源码:数据结构:frontier : 边缘,存储未扩展的节点。通过维护一个优先级队列,按路径损耗来排列。 explored :探索集,保存已访问的节点。算法流程:如果边缘为空,则返回失败。操作:EMPTY?(frontier) 否则从边缘中选择...
近期,“教科书式老赖”黄淑芬案件,引起了广泛关注。 “老赖”,也被称为失信被执行人。针对部分人失信的情况,相关法律在不断完善。2013年,最高法院出台相关司法解释建立了失信被执行人名单库。失信被执行人名单信息将被整合至被执行人的信用档案中,并以信用报告的形式向金融机构等单位提供,供有关单位在贷款等业务审核中予以衡量考虑。名单涵盖了社会各行各业的“老赖”。数据显示,截
【简介】跨站脚本(Cross-site scripting,简称:XSS)是一种网站应用程序的安全漏洞攻击,是代码注入的一种。XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。从而使目标计算机收到危害。...
jsconst app = getApp();//引入插件:微信同声传译const plugin = requirePlugin('WechatSI');//获取全局唯一的语音识别管理器recordRecoManagerconst manager = plugin.getRecordRecognitionManager();const db = wx.cloud....
自动引用计数1.1 什么是自动引用计数 ARC和MRC的区别: MRC:(Manual Reference Counting)也就是非ARC,在Xcode4之前,Object_C的内存管理就需要开发人员手动维护。 ARC:(Automatic Reference Counting)也就是ARC,翻译成中文就是:【自动引用计数】,不需要开发人员手动维护,系统会在合适...
无法加载 DLL“SQLite.Interop.DLL”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。 在使用sqlite数据库的时候遇到的,这里做个总结; 在项目里添加 现有项 把SQLite.Interop.DLL文件添加进来,然后点击属性 修改一...
1.只有寄存器类型变量才能在initial内部被赋值。 2.verilog系统任务 (1):finish/finish/finish/stop finish:如果遇到finish:如果遇到finish:如果遇到finish,仿真器完成仿真并退出。 stop:当遇到stop:当遇到stop:当遇到stop,仿真器停止仿真,但不退出,同时提供一个命令提示符,在命令提...
写“查看”功能时,不想要这两个按钮添加[nzFooter]=null就行 <nz-modal id="see" [(nzVisible)]="isVisible" nzTitle="标题" (nzOnCancel)="handleCancel()" [nzFooter]=null style="width:80%" >……</nz-modal>(nzOnC...
前言:Cesium.knock能够使Cesium球体监听html控件, 从而根据控件的值实时改变一些地图属性.如图, Cesium的标注聚合功能, Cesium能够根据html控件输入的像素范围, 最小簇聚, 实时改变标注的范围和大小.分四步使用1、完整代码如下<!DOCTYPE html><html lang="en"><head> &...
文章目录语法1. 分支1. 分支的查看、切换、创建、删除2. 隐藏工作区修改内容3. 合并分支2. 远程公有仓库1. 语法使用2. 异常error3. 远程私有仓库 - 自己买的服务器语法分支名:指向该分支名的最新commit版本Head指针:指向当前所在分支的最新commit版本 – head指针跟着当前分支指针 1. 分支 由一下图描述分支的版本机制 → 当前分支在哪,...