小编Che*_*sum的帖子

学校考勤系统的数据库设计

我正在为一所特定模块处理考勤系统的学校开展一个项目.我正在使用LAMP(PHP 5.2+ MYSQL 5+)堆栈进行开发.现在学校的人数大约是1500人,每年的工作日总数大约是250人.此外,我要保留5年的记录才能删除.

表结构是

studentId varchar(12) 
date date
fn varchar(1) *forenoon*
af varchar(1) *afternoon*
Run Code Online (Sandbox Code Playgroud)

如果我只使用一个表,那意味着5年期间有1,875,000条记录.现在我没有考虑这样一个庞大的数据库,而是考虑为每个类(不是部分)创建一个表.所以考虑到有12个类,我将有12个表,这意味着每个表平均有1,55,000个记录,这是可管理的.

这是正确的方法吗?还是有更好的方法吗?

mysql database

8
推荐指数
1
解决办法
7241
查看次数

哪种算法用于为学校生成时间表

我正在研究一个简单的应用程序,它将为学校生成时间表(每日计划).我已经阅读了算法的基础知识,但对于从哪里开始感到困惑.

问题:
考虑到很多限制,将教师分配到课堂上:
1)学科
2)教师的专业知识
3)不超过2个班级等等

不言而喻,应该没有重叠.基本上我需要将N名教师分配到每天有固定工作时数的M班(8).

输入:
1)班级总数
2)教师及其专业知识
3)每个班级的科目/课程
4)每班每天的讲座数量
5)其他灵活的约束条件,如教师每天的最小/最大工作时间,每位教师每周的总工作时间等

我的问题:
1)将它视为具有多个约束的赋值问题是否正确?
2)我应该使用哪种算法?(匈牙利算法?)
3)我应该从一开始就获得整套约束,然后生成表,还是应该在中间步骤中完成?

我是学习/实现算法的初学者,所以任何指导我正确方向的帮助都值得赞赏!谢谢.

algorithm scheduling data-structures

5
推荐指数
1
解决办法
8715
查看次数

Java Regex在拆分之前检查以前的char

我有这样的字符串

这:字符串:必须〜:是:分:时:前面:CHAR:是:不〜:此

我需要用分隔符":"拆分该行,但仅当分隔符前的字符不是"〜"时才

我现在有以下正则表达式:

String[] split = str.split(":(?<!~:)");
Run Code Online (Sandbox Code Playgroud)

它有效,但是由于我纯粹通过反复试验来达到它,我不相信它是最有效的方法.此外,此功能将经常在大字符串上重复调用,因此性能会受到考虑.什么是更有效的方式?

java regex

4
推荐指数
1
解决办法
1822
查看次数

标签 统计

algorithm ×1

data-structures ×1

database ×1

java ×1

mysql ×1

regex ×1

scheduling ×1