In the article, there are two tables to store two types of information related to items: the unit profits of items and the purchase quantities of items in transactions.
In the implementation, we use a different but equivalent representation. We have only one table for transactions. But in each transaction, we directly store the utility of items. The utility of an item in a transaction is the purchase quantity multiplied by the unit profit. By storing the utility directly in transactions, we don't need to represent the profit table explicity.
This does not change anything to the algorithm.
For more details, you may read the example again in the documentation of SPMF:
"Third, the symbol ":" appears and is followed by the utility of each item in this transaction (an integer), separated by single spaces."
--> As mentionned there, we directly store the utilities of items in transaction, rather than the purchase quantities. Thus we do not need the profit table.
"Note that the input format is not exactly the same as described in the article. But it is equivalent."