tensorflow环境配置中遇到的问题
在运行一个手写数字识别模型之前,光环境配置就花了好长时间,记录下遇到的一些问题
解决ImportError: Keras requires TensorFlow 2.2 or higher. Install TensorFlow via pip install tensorflow
该问题在导入keras库时报出
import keras
解决方法
pip listkeras==2.4.3(目前版本太高,需要降版本到2.2)
pip install keras==2.2
2. keras保存加载模型报错“AttributeError: ‘str‘ object has no attribute ‘decode‘”
在keras保存模型时报错
后面找到原因是h5py版本的问题,自己装的版本比较高一些,这可能导致了bug出现,把h5py降到2.10.0版本就行了。(ps:有时候更新库要注意每个库之间版本的问题,可能会带来各种bug)
pip install h5py==2.10.0
3. ValueError: not enough values to unpack (expecte ...
C语言顺时针字幕矩阵
训练目的:熟悉Linux下的gcc和Makefile的使用。
要求,输入两个数,使用gcc和Makefile生成一个字母矩阵。
例如,输入4,5 ,得到一个4行5列的矩阵(字母按照顺时针排列):
A B C D E
N O P Q F
M T S R G
L K J I H
输入1,5,得到:
A B C D E
输入5,1
A
B
C
D
E
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657#include <stdio.h>int main(){int a, b;scanf("%d%d", &a, &b);char c[a][b];char c1 = 65;int X[4] = {0, 0, -1, 1}; ...
数据结构模拟测试(编程)
1.线性表利用两个线性表LA和LB分别表示两个集合A和B,现要求进行如下运算:B=A∩B。
注意:
1. 前置代码已经给出,请在该代码的基础上完成规定要求。
2. 测试用例2,表示没有任何输出,并不是输出回车符号。
3.输入时,先输入线性表的元素个数,然后输入各个元素。例如,输入:
2
1 2
表示第一个线性表元素个数为2,元素分别为 1,2 。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141# ...
数据结构模拟测试(选择)
一下关于数据元素之间关系的说法中错误的是(1)
集合是一种数据结构
树形结构具有分之和层次的特点,其形态有些像自然界中的数,即一对多
图形结果中的每个元素都可能与其他结点有邻接(有关系),即多对多
线性结构中数据元素形成一对一的关系
/******************************************************************/
1234count=1;for(k=1;k<=n;k=2*k) for (j = 1; j <= n;j++) count++;
/******************************************************************/
设线性表有n个元素且采用顺序存储结构,算法的时间复杂度为O(1)的操作是(2)
删除第i个元素
访问第i个元素,求第i个元素的直接前驱和直接后继
在第i个位置插入一个新元素
查找元素x
/********************************************************* ...
排序算法的应用
设有顺序放置的n个桶,每个桶中装有一粒砾石,每粒砾石的颜色是红,白,蓝之一。要求重新安排这些砾石,使得所有红色砾石在前,所有白色砾石居中,所有蓝色砾石居后,重新安排时对每粒砾石的颜色只能看一次,并且只允许交换操作来调整砾石的位置。
提示:利用快速排序思想解决。由于要求“对每粒砾石的颜色只能看一次”,设3个指针i,j和k,若将j看作工作指针,将r[1..j-1]作为红色,r[j..k-1]为白色,r[k..n]为兰色。从j=1开始查看,若r[j]为白色,则j=j+1;若r[j]为红色,则交换r[j]与r[i],且j=j+1,i=i+1;若r[j]为兰色,则交换r[j]与r[k];k=k-1。算法进行到j>k为止。
为方便处理,将三种砾石的颜色用整数1、2和3表示。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253#include "assert.h"#include <iostream>using nam ...
实现图的基本操作
建立图(邻接矩阵、邻近表任选其一)的存储结构、实现图的深度优先遍历和广度优先遍历。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881 ...
二叉树与表达式
将通过二叉链表实现的表达式二叉树进行输出,同时计算出结果。
要求:
1)二叉树建立时,使用先序建立;
2)四个运算符包括:+, -, *, /;
3 ) 在输出时,遇到优先级问题时,相应的括号也要输出。
提示:
1)递归执行下列步骤即可求值:先分别求出左子树和右子树表示的子表达式的值,最后根据根结点的运算符的要求,计算出表达式的最后结果。
2)二叉树的中序遍历序列与原算术表达式基本相同,但是需要将中序序列加上括号,即当根结点运算符优先级高于左子树(或右子树)根结点运算符时,就需要加括号。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 ...
二叉树的链式存储
实现二叉树的基本操作:建立、遍历、计算深度、结点数、叶子数等。
输入C,先序创建二叉树,#表示空节点;
输入H:计算二叉树的高度;
输入L:计算二叉树的叶子个数;
输入N:计算二叉树节点总个数;
输入1:先序遍历二叉树;
输入2:中序遍历二叉树;
输入3:后续遍历二叉树;
输入F:查找值=x的节点的个数;
输入P:以缩格文本形式输出所有节点。
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414 ...
稀疏矩阵
实现稀疏矩阵压缩存储,并实现矩阵转置和求和。
输入矩阵时,首先需要输入非零元素的个数,然后分别输入矩阵的 行号,列号和值。
输完2个矩阵后,自动进行计算第一个矩阵的转置以及两个矩阵的和。
例如:输入如下:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148#include <iostream>using namespace std;struct Triple ...
稀疏矩阵的压缩存储
存储方式设矩阵 A 中有 s 个非零元素,若 s 远远小于矩阵元素的总数(即s≤m×n),则称 A 为稀疏矩阵。e=s/(m*n),为矩阵的稀疏因子。有人认为 e≤0.05 时称之为稀疏矩阵。
每一个三元组 (i, j, aij) 唯一确定了矩阵A的一个非零元素。因此,稀疏矩阵可由表示非零元的一系列三元组及其行列数唯一确定。
三元组结构体
12345678910111213#include <iostream>using namespace std;struct Triple{ //三元组 int row, col; //非零元素行号/列号 int value; //非零元素的值 void operator=(Triple &R) //赋值 { row = R.row; col = R.col; value = R.value; }};
稀疏矩阵 ...