使用排序顺序表结构实现现实生活中的通讯录,联系人增删改查,并按顺序排列,直接交作业
2KB 通讯率
1
应用程序变得越来越复杂,开发团队面临着不断变化的需求,需要提供更快的结果。
现在,您需要比以往任何时候都更好地理解和应用项目中的良好软件架构实践。
高级iOS应用程序架构彻底解释了多个现代iOS架构,并演示了它们在真实应用程序中的用法。
本书的前半部分向您介绍了iOS应用程序架构的不同方面。
我们建议您在深入了解任何特定的体系结构章节之前阅读这些章节,以便更好地处理所涉及的概念。
本书的后半部分探讨了多个架构,每章一个。
每个架构章节都以一点历史开头,然后是详细的理论演练。
每个架构章节的其余部分都侧重于将理论应用于iOS应用程序开发。
每个架构章节都以覆盖该架构的优缺点结束。
您可以按顺序阅读本节-或直接跳转到您感兴趣的架构。
这是你的选择!本书适用于使用Swift构建应用程序的iOS开发人员。
本书中的材料假定您熟悉设计模式以及基本架构(如MVC)和基本架构概念(如控制反转)。
2025/1/9 0:33:55 84.71MB ios mvvm viper swift
1
识别0-9十个数字,BP神经网络数字识别源代码使用说明第一步:训练网络。
使用训练样本进行训练。
(此程序中也可以不训练,因为笔者已经将训练好的网络参数保存起来了,读者使用时可以直接识别)第二步:识别。
首先,打开图像(256色);
再次,进行归一化处理,点击“一次性处理”;
最后,点击“R”或者使用菜单找到相应项来进行识别。
识别的结果显示在屏幕上,同时也输出到文件result.txt中。
该系统的识别率一般情况下为90%。
此外,也可以单独对打开的图片一步一步进行图像预处理工作,但要注意,每一步工作只能执行一遍,而且要按顺序执行。
具体步骤为:“256色位图转为灰度图”-“灰度图二值化”-“去噪”-“倾斜校正”-“分割”-“标准化尺寸”-“紧缩重排”。
注意,待识别的图片要与win.dat和whi.dat位于同一目录,这两文件保存训练后网络的权值参数。
具体使用请参照书中说明。
2024/12/5 8:55:53 60KB BP神经网络
1
http_load修改版,只支持post请求,且按顺序执行,参考https://blog.csdn.net/lala9517/article/details/79870755
2024/12/4 15:42:27 35KB http_load post 顺序 顺序执行
1
用链表形式打印,用数组形式储存,并按顺序排列,支持插入删除,补空洞
2024/11/10 16:19:03 17KB 数据结构
1
用于制作游戏人物模型的由日本开发的MMD模型制作软件(已汉化)PmxEditor是用来给MMD的模型进行绑骨和物理演算的软件,因为这个都是日文,很多人看这个可能会有些茫然,很难辨认,不过这并没有很大的问题,我们只需要了解其中的一部分选项有什么功能,就可以来进行简单的绑骨了  1、打开PE,其中左边的“选尺”是用来选择要编辑的物体类型(按顺序看就是:顶点,面,骨骼,刚体,链接体);  “表”是用来调整背景颜色,顶点颜色一类的,在某些时候可以方便我们观察模型,进行一些细致的操作;  2、“绞”经常需要用,主要是用来确定模型需要编辑的范围  3、选择到材质这一项,就可以选择特定的部件用来单独编辑  4、选择材质0是白色馒头型物体,材质4是卷毛君的一个红晕,像这样,分别选用不同的材质,就可以分别编辑不同的区域了  5、如果有需要删除的部分,也可以使用这个面板,比如说,卷毛君的材质6是头上那根毛  6、勾选材质6,卷毛变黑了,点击这个“选尺材质の什么削除”  7、选择“是”,确认消除  8、卷毛的毛就拔掉了=  9、关于那个“涂”,则是用来刷权重用的  所谓刷权重,就是将骨骼与模型的顶点建立联系,让模型可以跟随骨骼来移动,也就是我们通常所说的绑骨  10、当然,PmxEditor的功能远不止这些,其它用得比较少的控件也有很多,大家可以在网上自行学习
2024/10/9 2:37:42 6.48MB PmxEditor
1
文档包括2个应用程序,在安装好DXperience12.2.10后分别按顺序运行DXperience,DevExpress,Unified。
WIN7,VS2010亲测可用。
2024/9/30 19:54:26 8.99MB dev express 12.2.10
1
编写一个Matlab程序,实现基于DCT的图像变换编码。
编码过程:将原始图像划分成8×8的图像块,采用离散余弦变换(DCT)对图像块进行变换。
解码过程:对于每个图像块,使用一定比例的最低频DCT系数(被舍弃的高频DCT系数设为0)做逆离散余弦变换(IDCT),得到重构的图像块。
最后,将所有重构的图像块按顺序拼接成完整的解码图像。
分别取32、16、8个最低频DCT系数(如图1所示)进行反变换得到重构的图像,比较图像的质量,计算这三种情况下的峰值信噪比。
峰值信噪比的计算公式:PSNR=10log10(2552/MSE)其中,MSE(MeanSquaredError)指原始图像和重构图像之间的均方误差。
2024/9/16 0:17:38 2KB matlab DCT
1
第二题[提示](1) 假定系统有五个进程,每一个进程用一个进程控制块PCB来代表。
进程控制块的格式为:进程名指针要求运行时间已运行时间状态其中,进程名----作为进程的标识,假设五个进程的进程名分别是Q1,Q2,Q3,Q4,Q5。
指针----进程按顺序排成循环队列,用指针指出下一个进程的进程控制块首地址,最后一个进程中的指针指出第一个进程的进程控制块首地址。
要求运行时间----假设进程需要运行的单位时间数。
已运行时间----假设进程已经运行的单位时间数,初始值为“0”。
状态----有两种状态,“就绪”状态和“结束”状态,初始状态都为“就绪”,用“R”表示,当一个进程运行结束后,它的状态变为“结束”,用“E”表示。
(2) 每次运行你所设计的处理器调度程序之前,为每个进程任意确定它的“要求运行时间”。
把五个进程按顺序排成循环队列,用指针指出队列连接情况。
另用一标志单元记录轮到运行的进程。
(3) 处理器调度总是选择标志单元指示的进程运行。
由于本实验是模拟处理器调度的功能,所以,对被选中的进程并不实际启动运行,而是执行:已运行时间+1来模拟进程的一次运行,表示进程已经运行过一个单位的时间。
请注意:在实际的系统中,当一个进程被选中运行时,必须置上该进程可以运行的时间片值,以及恢复进程的现场,让它占有处理器运行,直到出现等待事件或运行满一个时间片。
在这里省去了这些工作,仅用“已运行时间+1”来表示进程已经运行满一个时间片。
(4) 进程运行一次后,应把该进程的进程控制块中的指针值送到标志单元,以指示下一个轮到运行的进程。
同时,应判断该进程的要求运行时间与已运行时间,若该进程要求运行时间≠已运行时间,则表示它尚未执行结束,应待到下一轮时再运行。
若该进程的要求运行时间=已运行时间,则表示它已经执行结束,应把它的状态修改为“结束”(E)且退出队列。
此时,应把该进程的进程控制块中的指针值送到前面一个进程的指针位置。
(5) 若“就绪”状态的进程队列不为空,则重复上面(4)和(5)的步骤,直到所有进程都成为“结束”状态。
(6) 在所设计的称序中应有显示或打印语句,能显示或打印每次被选中进程的进程名以及运行一次后进称对列的变化。
(7) 为五个进程任意确定一组“要求运行时间”,启动所设计的处理器调度程序,显示或打印逐次被选中进程的进程名以及进程控制块的动态变化过程。
1
(1)创建生产者和消费者线程在Windows2000环境下,创建一个控制台进程,在此进程中创建n个线程来模拟生产者或者消费者。
这些线程的信息由本程序定义的“测试用例文件”中予以指定。
该文件的格式和含义如下:31P32P43C414P25C3124第一行说明程序中设置几个临界区,其余每行分别描述了一个生产者或者消费者线程的信息。
每一行的各字段间用Tab键隔开。
不管是消费者还是生产者,都有一个对应的线程号,即每一行开始字段那个整数。
第二个字段用字母P或者C区分是生产者还是消费者。
第三个字段表示在进入相应线程后,在进行生产和消费动作前的休眠时间,以秒计时;
这样做的目的是可以通过调整这一列参数,控制开始进行生产和消费动作的时间。
如果是代表生产者,则该行只有三个字段。
如果代表消费者,则该行后边还有若干字段,代表要求消费的产品所对应的生产者的线程号。
所以务必确认这些对应的线程号存在并且该线程代表一个生产者。
(2)生产和消费的规则在按照上述要求创建线程进行相应的读写操作时,还需要符合以下要求:①共享缓冲区存在空闲空间时,生产者即可使用共享缓冲区。
②从上边的测试数据文件例子可以看出,某一生产者生产一个产品后,可能不止一个消费者,或者一个消费者多次地请求消费该产品。
此时,只有当所有的消费需求都被满足以后,该产品所在的共享缓冲区才可以被释放,并作为空闲空间允许新的生产者使用。
③每个消费者线程的各个消费需求之间存在先后顺序。
例如上述测试用例文件包含一行信息“5C3l24”,可知这代表一个消费者线程,该线程请求消费1,2,4号生产者线程生产的产品。
而这种消费是有严格顺序的,消费1号线程产品的请求得到满足后才能继续往下请求2号生产者线程的产品。
④要求在每个线程发出读写操作申请、开始读写操作和结束读写操作时分别显示提示信息。
(3)相关基础知识本实验所使用的生产者和消费者模型具有如下特点:本实验的多个缓冲区不是环形循环的,也不要求按顺序访问。
生产者可以把产品放到目前某一个空缓冲区中。
消费者只消费指定生产者的产品。
在测试用例文件中指定了所有的生产和消费的需求,只有当共享缓冲区的数据满足了所有关于它的消费需求后,此共享缓冲区才可以作为空闲空间允许新的生产者使用。
本实验在为生产者分配缓冲区时各生产者间必须互斥,此后各个生产者的具体生产活动可以并发。
而消费者之间只有在对同一产品进行消费时才需要互斥,同时它们在消费过程结束时需要判断该消费对象是否已经消费完毕并清除该产品。
Windows用来实现同步和互斥的实体。
在Windows中,常见的同步对象有:信号量(Semaphore)、互斥量(Mutex)、临界段(CriticalSection)等。
使用这些对象都分为三个步骤,一是创建或者初始化:接着请求该同步对象,随即进入临界区,这一步对应于互斥量的上锁;
最后释放该同步对象,这对应于互斥量的解锁。
这些同步对象在一个线程中创建,在其他线程中都可以使用,从而实现同步互斥。
2024/7/25 19:35:19 1.63MB 多线程同步生产者和消费者问题
1
共 49 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡