04 2021 档案
摘要:【数组对象 Arrays of Objects】 接上篇例子,我们现在想要在我们的程序中创建多个Car 一个两个还好,要是我们想要创建多个car,一次次分别实例化就十分繁杂且混乱,于是有了数组对象 使用数组来存储相同类型的对象有助于简化操作 前文我们说过,可以把类当作一个存储数值的属性————就像我
阅读全文
摘要:【概述】 在之前的课程中,我们看到了不同的内置类。这些类包括Scanner类和String类,以及一些原始数据类型的类,例如Integerand Double,Integer.parseInt(,Double.parseDouble() 【原始类型 Primitive types】 Java中有八大
阅读全文
摘要:【杂话】 如果在调用参数的时候,传入参数的类型和你预设的参数类型不匹配,那么C语言会帮你悄悄地转换好 实质上这是一个很大的漏洞,我们在检查的时候需要仔细检查(甚至不会有warning)。因为转换的结果不一定是我们期望的结果 之后的语言,如C++,Java就严格得多的 【数值传递】 C语言在调用函数的
阅读全文
摘要:【概述】 在之前,我们的搜索总是使用线性搜索来完成————它的效率是很低的(毕竟是从头开始一个一个找) 我们可以使用另一种称为二进制搜索的搜索算法,该算法效率更高 二进制搜索是一种旨在在排序数组中查找值的搜索算法 二进制搜索通过反复将列表中,可能包含目标参数的部分一分为二,一直循环对半分的操作,直到
阅读全文
摘要:【排序】 排序技术主要取决于两个因素 1.程序执行时间的长度 2.执行程序所需的空间 【冒泡排序】 我们可以使用许多不同的算法进行排序,排序数组的一种方法是使用冒泡 冒泡算法的思路是将最大的元素放在数组的右侧(末端) 现在,如果我们想要利用冒泡对一个数组进行排序,则思路如下: 1.遍历数组中的所有元
阅读全文
摘要:这是一个推论的例子 If you take my medication, you will get better. You are taking my medication. So, you will get better. 推断的有效性可以通过以下两种方式之一进行说明: 1.如果所有的假设都是正确
阅读全文
摘要:【概述】 计算机语言中,我们常用方法来归类一些“我们会反复使用且有规律的代码”,一个方法会含有方法名、返回值、参数列表,一些语言还有修饰符 而函数就属于方法的一种,利用方法,我们可以快速进行一些操作 【方法声明】 <放回类型> <方法名> (参数列表){ 方法执行的语句; } 其中,返回类型除了我们
阅读全文
摘要:【引子】 有的时候,我们需要一个“集合了许多不同数据的”集合体,比如我们想要登记学生的成绩。如果我们一直创建每个学生的成绩的变量,未免太过于低效了。 数组就是这样一个“集合同类的不同变量”的东西 【数组定义】 C的数组定义很简单干练: <类型> <名称> [所含元素数量]; int grades[1
阅读全文
摘要:【火箭发射倒计时】 #include <stdio.h> int main (void) { int count = 100; while (count > 0) { printf("%d \n",count);// a count--; //b } printf("发射!\n"); //当我们想要
阅读全文
摘要:【概述】 一般认为,循环由三个最基本的部分构成:判断条件,执行步骤,更新参数 利用循环,我们可以完成一些“在某些条件下不断执行”的操作,循环包括while,do-while,以及for 其中while的两个比较易于理解,不过熟练后还是for更舒服且用得多。三种循环各有各自的功能,不分好坏 【whil
阅读全文
摘要:【概述】 有限状态机(有时称为有限状态自动机)是一种可以用硬件或软件实现的计算模型,可以用来模拟顺序逻辑和某些计算机程序。 有限状态自动机生成常规语言。它可用于对许多领域的问题进行建模,包括数学,人工智能,游戏和语言学。 【米里状态机 Mealy State Machine】 顺序系统,其中输出取决
阅读全文
摘要:【新手C语言】2.判断语句if以及循环语句 【基本的if语句】 基本的if语句格式如下: if( 条件 ){ 执行的语句 } if(a>10){ a++ ; } 其中"条件"指的是各种判断语句,比如说a>b ,a = c 等等。在C语言中,判断的结果不是布尔运算(true和false)。两个值的关系
阅读全文
摘要:【append/3 连接两个List】 我们将定义一个重要的谓词append / 3,其参数均为列表 如果列表L3是将列表L1和L2串联在一起的结果,则append(L1,L2,L3)为true ?- append([a,b,c,d],[3,4,5],[a,b,c,d,3,4,5]). yes ?-
阅读全文
摘要:【概述】 在ProLog中,我们用“is”代表“=”。如下图所示 : 同时,我们也可以在问询中提问有关算术结果的内容,比如: 我们可以通过定义来添加一种算法(有点其它语言方法函数内味了),比如 addThreeAndDouble(X, Y):-Y is (X+3) * 2. 那么我们在接下来的问询中
阅读全文
摘要:(这部分比较抽象且写的不是很好,可能还要再编辑) 【概述】 流:流是一系列数据,包括输入流和输出流。你可以想象成黑客帝国的“代码雨”,只要我们输入指令,这些数据就像水一样流进流出了 IO:Input和OutPut,输入和输出文件 通过IO流,我们可以利用Java去读取来自文件的数据(目前阶段大多是记
阅读全文
摘要:【概述】 有时候,我们需要某类的变量,它们是用于表达同一类的东西,但每个个体有不一样,比如学生成绩表的各个成绩 我们不可能为每个学生单独建立一个int变量来表示成绩,此时我们可以创建一个数组,再把每个学生的数据输进去 数组,可以看作一组数的集合————当然不仅限于数,String,char,bool
阅读全文
摘要:【二进制转十进制】 public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("Please enter a binary number"); int num =
阅读全文
摘要:【概述】 就目前而言,我们遇到的“输出”无非就是这个比: System.out.println() 更详细的输入输出会在IO中提到,那么这个笔记就是记录几种常用输入机制 【Scanner输入】 一般而言,在这个阶段的Java编写中,最方便且最好用的方式来获得用户输入,那么该怎么使用呢? 1.impo
阅读全文
摘要:【概述】 在if/条件语句中,我们已经谈及判断了,这次将详细讲讲一些逻辑判断 基本逻辑 &:且,And,需要二者均为True |:或,Or ,需要二者其一为False即可 ^:异或,XOE,两者结果不同为true,否则为false !: 非,Not 短路 短路与 && 短路或 || 简而言之,短路与
阅读全文
摘要:【简介】 列表是Prolog编程中常用的一种重要的递归数据结构 列表是一个有限的元素序列 实例: 所有Prolog术语都可以是列表的元素,一个非空的List应该含有两个元素:头元素(Head)和尾元素(tail) 头是指List中的第一个元素,除去头都是尾 “列表的尾部也总是一个列表 / The t
阅读全文
摘要:【递归:阶乘】 1.寻找基本情况 对于阶乘而言,最基本的情况就是0!和1!,二者的结果都是1 我们不妨现在方法中写下这个情况,帮助我们跳出递归 if(i<=1){ return 1 ; } 接下来,如果不是1或0,则进行阶乘运算 public static int Factorial (int i)
阅读全文

浙公网安备 33010602011771号