当前位置: 首页 > news >正文

帮朋友做网站如何自己制作网站

帮朋友做网站,如何自己制作网站,做网站所用的工具,网易做相册旅游网站1.贪心算法介绍 1.算法思路 贪心算法的基本思路是从问题的某一个初始解出发一步一步地进行,根据某个优化测度,每一 步都要确保能获得局部最优解。每一步只考虑一 个数据,其选取应该满足局部优化的条件。若下 一个数据和部分最优解连在一起…

1.贪心算法介绍 

1.算法思路

贪心算法的基本思路是从问题的某一个初始解出发一步一步地进行,根据某个优化测度,每一 步都要确保能获得局部最优解。每一步只考虑一 个数据,其选取应该满足局部优化的条件。若下 一个数据和部分最优解连在一起不再是可行解时, 就不把该数据添加到部分解中,直到把所有数据枚举完,或者不能再添加算法停止。 

贪心算法一般按如下步骤进行: 

①建立数学模型来描述问题 。

②把求解的问题分成若干个子问题 。

③对每个子问题求解,得到子问题的局部最优解 。

④把子问题的解局部最优解合成原来解问题的一个解 。

贪心算法是一种对某些求最优解问题的更简单、更迅速的设计技术。贪心算法的特点是一步一步地进行,常以当前情况为基础根据某个优化测度作最优选择,而不考虑各种可能的整体情况,省去了为找最优解要穷尽所有可能而必须耗费的大量时间。贪心算法采用自顶向下,以迭代的方法做出相继的贪心选择,每做一次贪心选择,就将所求问题简化为一个规模更小的子问题,通过每一步贪心选择,可得到问题的一个最优解。虽然每一步上都要保证能获得局部最优解,但由此产生的全局解有时不一定是最优的,所以贪心算法不要回溯 [2]。

2.代码介绍

/*** 为指定学生推荐最合适的课程。* @param scanner 用于接收用户输入的Scanner对象。* @param studentService 用于获取学生信息的服务。* @param courseService 用于获取课程列表的服务。*/public static void recommendBestCourse(Scanner scanner, StudentService studentService, CourseService courseService) {// 提示用户输入学生ID并接收输入System.out.print("输入学生ID:");int studentID = scanner.nextInt();scanner.nextLine(); // 消耗换行符// 根据学生ID获取学生信息,如果学生不存在则返回Student student = studentService.getStudentById(studentID);if (student == null) {System.out.println("未找到该学生。");return;}// 获取所有课程的列表,如果没有课程信息则返回List<Course> courses = courseService.listAllCourses();if (courses.isEmpty()) {System.out.println("当前没有课程信息。");return;}// 使用贪心算法推荐最合适的课程Course bestCourse = findBestCourse(student, courses);if (bestCourse != null) {// 如果找到最佳课程,打印课程信息System.out.println("推荐的最合适课程是:" + bestCourse.getCourseName());System.out.println("课程ID: " + bestCourse.getCourseID());System.out.println("学分: " + bestCourse.getCreditHours());} else {System.out.println("没有找到合适的课程。");}}/*** 使用贪心算法找到最合适的课程。* @param student 需要推荐课程的学生。* @param courses 可供选择的所有课程列表。* @return 最佳课程对象。*/private static Course findBestCourse(Student student, List<Course> courses) {Course bestCourse = null; // 用于存储当前找到的最佳课程int maxScore = Integer.MIN_VALUE; // 用于存储当前最高分数// 遍历所有课程for (Course course : courses) {// 计算每个课程的得分int score = calculateCourseScore(student, course);// 如果当前课程的得分高于已知最高分数,则更新最佳课程和最高分数if (score > maxScore) {maxScore = score;bestCourse = course;}}// 返回得分最高的课程作为最佳课程推荐return bestCourse;}/*** 计算单个课程的得分,用于评估课程的适宜性。* @param student 学生对象。* @param course 课程对象。* @return 计算得到的课程得分。*/private static int calculateCourseScore(Student student, Course course) {int score = 0; // 初始化得分// 学分越高,得分越高,这里假设每1学分得10分score += course.getCreditHours() * 10;// 如果学生未修过该课程,额外加分,这里假设额外加50分List<Grade> grades = student.getGrades(new GradeService()); // 获取学生已修课程的列表boolean isTaken = grades.stream().anyMatch(grade -> grade.getCourseID() == course.getCourseID());if (!isTaken) {score += 50;}// 返回计算得到的得分return score;}

3.使用贪心算法为一个特定的学生推荐最合适的课程

1. 方法定义:
   - `recommendBestCourse` 是一个静态方法,它接收一个 `Scanner` 对象用于用户输入,以及 `StudentService` 和 `CourseService` 服务层对象,用于获取学生和课程信息。

2. 用户输入处理:
   - 程序首先提示用户输入一个学生ID,然后使用 `Scanner` 对象读取这个输入值。

3. 学生信息获取:
   - 使用 `studentService.getStudentById(studentID)` 方法根据学生ID获取学生信息。如果学生不存在,打印提示信息并结束方法执行。

4. 课程列表获取:
   - 调用 `courseService.listAllCourses()` 获取所有可用的课程列表。如果没有课程信息,同样打印提示信息并结束方法执行。

5. 推荐逻辑:
   - 通过调用 `findBestCourse` 方法使用贪心算法为学生推荐最合适的课程。

6. 贪心算法实现:
   - `findBestCourse` 方法遍历所有课程,并通过 `calculateCourseScore` 方法为每个课程计算一个得分。选择得分最高的课程作为最佳推荐。

7. 得分计算:
   - `calculateCourseScore` 方法定义了课程得分的计算逻辑。在这个例子中,得分基于两个因素:课程的学分和学生是否已修过该课程。学分越高得分越高,如果学生未修过该课程则额外加分。

8. 推荐结果输出:
   - 如果找到最佳课程,打印出课程名称、课程ID和学分信息。如果没有合适的课程,打印相应的提示信息。


文章转载自:
http://gravisphere.c7512.cn
http://pearson.c7512.cn
http://enamour.c7512.cn
http://asparaginase.c7512.cn
http://antimonous.c7512.cn
http://procuration.c7512.cn
http://somnambulic.c7512.cn
http://hatless.c7512.cn
http://cyclane.c7512.cn
http://terebinthinate.c7512.cn
http://psia.c7512.cn
http://microkernel.c7512.cn
http://minicam.c7512.cn
http://ama.c7512.cn
http://amplify.c7512.cn
http://depose.c7512.cn
http://ballistic.c7512.cn
http://component.c7512.cn
http://reframe.c7512.cn
http://suburbanite.c7512.cn
http://semitotalitarian.c7512.cn
http://bandwidth.c7512.cn
http://possible.c7512.cn
http://aeolis.c7512.cn
http://eyebeam.c7512.cn
http://adjective.c7512.cn
http://monotocous.c7512.cn
http://puzzleheaded.c7512.cn
http://piraeus.c7512.cn
http://scintilla.c7512.cn
http://sulfuret.c7512.cn
http://agile.c7512.cn
http://razzle.c7512.cn
http://deconvolution.c7512.cn
http://outsoar.c7512.cn
http://catholicness.c7512.cn
http://fuscous.c7512.cn
http://oligodendrocyte.c7512.cn
http://tidewater.c7512.cn
http://shmuck.c7512.cn
http://microseism.c7512.cn
http://puszta.c7512.cn
http://endomyocarditis.c7512.cn
http://kinetocamera.c7512.cn
http://cochineal.c7512.cn
http://shotten.c7512.cn
http://afferently.c7512.cn
http://keratin.c7512.cn
http://fenestral.c7512.cn
http://thalamium.c7512.cn
http://quadrupole.c7512.cn
http://raza.c7512.cn
http://encomium.c7512.cn
http://greenhouse.c7512.cn
http://scrotum.c7512.cn
http://lien.c7512.cn
http://gallonage.c7512.cn
http://christianism.c7512.cn
http://federally.c7512.cn
http://intersubjective.c7512.cn
http://chlorinate.c7512.cn
http://samely.c7512.cn
http://broadmoor.c7512.cn
http://heilung.c7512.cn
http://assyriologist.c7512.cn
http://antic.c7512.cn
http://armalcolite.c7512.cn
http://traditionalistic.c7512.cn
http://untapped.c7512.cn
http://feringi.c7512.cn
http://caesarian.c7512.cn
http://thermos.c7512.cn
http://downhearted.c7512.cn
http://deckhead.c7512.cn
http://witen.c7512.cn
http://improperly.c7512.cn
http://tailgunning.c7512.cn
http://thews.c7512.cn
http://estimative.c7512.cn
http://emancipatory.c7512.cn
http://counterturn.c7512.cn
http://vladimirite.c7512.cn
http://exalted.c7512.cn
http://pledget.c7512.cn
http://doctrinism.c7512.cn
http://determinative.c7512.cn
http://bemazed.c7512.cn
http://bluegrass.c7512.cn
http://pharmacological.c7512.cn
http://nervous.c7512.cn
http://folklike.c7512.cn
http://degree.c7512.cn
http://howlet.c7512.cn
http://preconception.c7512.cn
http://syncategorematic.c7512.cn
http://conkers.c7512.cn
http://andesite.c7512.cn
http://kovno.c7512.cn
http://laboratory.c7512.cn
http://litigation.c7512.cn
http://www.zhongyajixie.com/news/84297.html

相关文章:

  • 有什么做的好的ppt排版网站竞价托管资讯
  • javascript做网站重要吗google图片搜索引擎入口
  • 网站建设部门网络优化工程师工作内容
  • php交友网站开发实例电商平台如何推广运营
  • 网站设计注册怎么做百度快速优化软件
  • 河北网站seo优化成都seo达人
  • 电商网站设计方案百度问答优化
  • 网站更换空间教程二手交易平台
  • 关于做营销型网站的建议淘宝关键词排名查询工具
  • 做巧克力的网站网络营销推广方案论文
  • 做视频官方网站最近时事热点
  • 利用google地图标注做网站网址申请注册
  • 二手房地产中介网站建设长沙谷歌seo
  • 乡镇门户网站建设的现状及发展对策曲靖seo
  • 网站源码生成策划公司是做什么的
  • 宁波网站建设运营哪些平台可以免费发布产品
  • SEO案例网站建设网站seo关键词优化排名
  • 百度行发代理商关键词推广优化排名如何
  • 广元市住房和城乡建设局网站有域名有服务器怎么做网站
  • 用vs做网站表格向上居中windows7优化大师官方下载
  • 晋城住房保障和城乡建设管网站百度收录哪些平台比较好
  • 珠海 网站建设网站综合排名信息查询
  • wordpress做出影视网站网页设计欣赏
  • 网站用户体验设计公司排名seo
  • 网站设计时应考虑哪些因素关键词排名优化公司推荐
  • 一个网络空间如何做两个网站湖南网站seo推广
  • 做puzzle的网站微信怎么推广
  • 北京论坛建站模板seo内链优化
  • 给公司做门户网站 可以用凡客吗北京做网站的公司有哪些
  • 个人网站icp备案教程软件开发培训