随笔分类 - 算法&计算方法
学校的lj玩意儿
摘要:LZSS压缩算法分析 在galgame汉化学习的过程中碰到的lzss算法,然而网上似乎找不到一个能讲明白的文章,很是恼火。 所幸有一些可以跑的代码,就通过代码分析来学习一下了。 主要参考: https://blog.csdn.net/qq_34254642/article/details/10365
阅读全文
摘要:很简单,类似简单迭代法。 1 import numpy as np 2 # Jacobi迭代法 3 # 测试数据 增广矩阵 4 data = [[10,-1,-2, 7.2], [-1,10,-2,8.3], [-1,-1,5, 4.2]] 5 print(np.array(data)) 6 # 取
阅读全文
摘要:先引入差商的概念,类似一种迭代计算? 丢代码: 1 import numpy as np 2 data = [(0.4,0.41075),(0.55,0.57815),(0.65,0.69675),(0.8,0.88811),(0.9,1.02652)] 3 4 count = len(data)
阅读全文
摘要:很简单,先求l(x),再乘y加起来求个和。 1 # data = eval(input("请输入数据:")) 2 data = [(0.4,-0.916291), (0.5,-0.693147), (0.6,-0.510826), (0.7,-0.356675)] 3 m = len(data) 4
阅读全文
摘要:就是找个破多项式,让每个点和真实数据的差值的平方最小,原理就是这么简单。 1.写正则方程组(法方程组) 2.写结果向量 3.解方程组 丢代码: 1 import numpy as np 2 import math 3 # data = eval(input("请输入数据:")) 4 data = [
阅读全文
摘要:这个不是很难,看看就好。 丢代码: 1 # 矩阵乘法函数 2 def matrix(a1, a2): 3 h1 = len(a1) 4 w1 = len(a1[0]) 5 h2 = len(a2) 6 w2 = len(a2[0]) 7 # 定矩阵大小 8 h3 = h1 9 w3 = w2 10
阅读全文
摘要:有两种方法,一个是通过高斯消去法的方式去求一个下三角矩阵,还有一个是直接分解。 显然直接分解好啊233。 然后这是个啥杜尔利特分解公式。 是由矩阵乘法的原理弄出来的。 书上P99页俩公式(5.34 5.35)。 轮流求u和l 三角分解部分的代码: 1 import numpy as np 2 3 m
阅读全文
摘要:过程很简单,代码实现有点烦,关键点就是矩阵对角线的数据,整就完事儿了。 1 import math 2 3 matrix = eval(input("请输入线性方程组的增广矩阵:")) 4 # 测试数据[[2,2,3,3],[4,7,7,1],[-2,4,5,-7]] 5 width = len(m
阅读全文
摘要:老师的作业罢了:-( 用的是简单迭代法求根 1 import math 2 3 #此处为示例迭代函数 求方程x^4+2x^2-x-3=0的根 4 def f(x): 5 return math.pow(math.pow(x+4,0.5)-1, 0.5) 6 7 a = eval(input("请输入
阅读全文
摘要:老师布置的作业罢了:-( 1 import math 2 # 请在此处自定义函数 3 def f(x): 4 #此处为样例函数 sinx-x^2/4 5 return math.sin(x)-(x**2)/4 6 7 a = eval(input("请输入端点a:")) 8 b = eval(inp
阅读全文