【第146期】回复网友@pcy:如何准备校招

本文分享了如何准备游戏策划的校园招聘,建议应届生不应过早限定意向岗位,而应注重全面发展。通过制作游戏Demo、提升游戏实现理解与玩家体验的关注,来展现个人优势。面试时,展示对游戏设计的独特见解和实际操作能力,能增加脱颖而出的机会。同时提醒求职者使用在线文档分享简历以保持清晰。

我是酱油,这是第146期文章

后台收到网友@pcy留言
在这里插入图片描述

校招和社招不同,不仅门槛相对低一些,而且岗位也不会分得很细,比如细到“关卡策划”“战斗策划”,大多数都统称为“游戏策划”。

作为应届生,除非有突出的专长,比如之前的毛同学,在大学期间就展现了优秀的文案能力,那可以奔着文案策划去。其他的同学,都不建议把意向岗位给限制得太窄。

对于企业,校招的目的是寻找值得培养的苗子,但苗子自身要留意:什么是我想做的,什么是我有机会做的。

比如关卡策划/战斗策划,是我想做的,但万一对方公司没这岗位空缺,而当下我有争取数值策划的机会,那对方会不会因为我的意向,而拒绝了我?

有同学会有顾虑,我就想做战斗策划,万一做了其他策划,会不会偏离原定职业规划?

其实不会。现实的游戏公司,撇开那种大型游戏项目,大部分的策划团队分工都不会很细。除了数值由专人来统筹,其余都是相互穿插,比如文案策划去设计关卡,系统策划去设计战斗……只要个人积极勤快点,人际上没问题,策划组内的事情关起门来都好说。

@pcy同学平时有用unity制作一些demo,看游戏设计书籍,这个就挺好,就已经是在为求职做准备。

别小看demo,魔鬼藏在细节中,就以咱们在第120期里提到的使用unity制作“角色移动”举例

【第120期】稀缺的“表现策划”,月薪5K~15K

同样是通过按键控制角色移动,但对镜头加些代码,当角色在指定范围跑动时,镜头不动。超出范围时,镜头跟上。当角色停下来时,镜头也缓缓停下。这样可以给玩家更好的感官体验,至于代码层面是怎么制作的,就可以噼里啪啦跟面试官介绍一

### PCY算法简介 PCY(Park-Chen-Yu)算法是一种用于频繁项集挖掘的改进Apriori算法。它利用哈希技术减少候选项集的数量,从而提高效率。该算法的核心思想是通过构建一个二维数组记录候选二元组的支持度计数,并结合位图过滤掉不满足最小支持度的候选项[^1]。 以下是PCY算法的一个Python实现: ```python from collections import defaultdict, Counter import itertools def pcy_algorithm(transactions, min_support): """ 实现PCY算法以发现频繁项集。 :param transactions: 事务列表,其中每个事务是一个集合或列表 :param min_support: 最小支持度阈值 :return: 频繁项集及其支持度计数 """ # 第一步:扫描数据集并计算单个物品的支持度 item_counts = Counter() bucket_counts = defaultdict(int) hash_table_size = 100 # 哈希表大小可以根据需求调整 buckets = [set() for _ in range(hash_table_size)] for transaction in transactions: # 统计单项频次 for item in transaction: item_counts[item] += 1 # 构建哈希表 pairs = list(itertools.combinations(transaction, 2)) for pair in pairs: hashed_value = (pair[0] * pair[1]) % hash_table_size # 简单的哈希函数 bucket_counts[hashed_value] += 1 buckets[hashed_value].add(pair) # 过滤低于最小支持度的桶 frequent_buckets = {bucket_id: count for bucket_id, count in bucket_counts.items() if count >= min_support} # 第二步:生成候选频繁项集 candidate_items = set(item for item, count in item_counts.items() if count >= min_support) candidate_pairs = set() for bucket_id, items_set in enumerate(buckets): if bucket_id not in frequent_buckets: continue for pair in items_set: if all(x in candidate_items for x in pair): # 如果两个单品都频繁,则加入候选对 candidate_pairs.add(frozenset(pair)) # 第三步:重新扫描数据集以确认真正的频繁项集 final_frequent_itemsets = {} counts = Counter() for transaction in transactions: for item in transaction: if item in candidate_items: counts[frozenset([item])] += 1 for pair in itertools.combinations(transaction, 2): frozenset_pair = frozenset(pair) if frozenset_pair in candidate_pairs: counts[frozenset_pair] += 1 # 返回最终的频繁项集和支持度 for key, value in counts.items(): if value >= min_support: final_frequent_itemsets[key] = value return final_frequent_itemsets # 示例输入 transactions = [ {'A', 'B', 'C'}, {'A', 'B'}, {'A', 'C'}, {'A', 'D'}, {'B', 'E'} ] min_support = 2 frequent_itemsets = pcy_algorithm(transactions, min_support) print("Frequent Itemsets:", frequent_itemsets) ``` 此代码实现了完整的PCY流程,包括第一次遍历中的哈希表构建以及第二次遍历时的真实频繁项集验证过程[^1]。 ### 关于PCY算法的特点 相比原始的Apriori算法,PCY的主要优势在于其引入了哈希结构来提前筛选可能成为频繁项的组合,减少了不必要的候选项生成和后续迭代次数。这种优化对于大规模稀疏数据尤其有效[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值